X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=engine%2Fmanifoldproxy.py;h=109f59348189fbfb64c76210bf20161e9096fb60;hb=00e925de365deefe83fd1bf17726dce43947dfbd;hp=0eac779778580372d66fecf8095757416900b2ff;hpb=2757273117a830a2ec078139acdfb996ed8aec78;p=unfold.git diff --git a/engine/manifoldproxy.py b/engine/manifoldproxy.py index 0eac7797..109f5934 100644 --- a/engine/manifoldproxy.py +++ b/engine/manifoldproxy.py @@ -4,8 +4,12 @@ # as well as # static/js/manifold-async.js -from django.core import serializers -from django.http import HttpResponse +import json +# this is for django objects only +#from django.core import serializers +from django.http import HttpResponse, HttpResponseForbidden + +from engine.manifoldquery import ManifoldQuery # xxx should probably cater for # format_in : how is the query encoded in POST @@ -21,6 +25,22 @@ def api (request,format): return # xxx actually ask the backend here - hard_wired_answer = {'a':'some string','b':123} - return HttpResponse (serializers.serialize("json",hard_wired_answer), - mimetype="application/json") + # 4amine + # manifold_query = ManifoldQuery() + # manifold_query.fill_from_dict(request.POST) + # locate the api and/or the auth + # api= + # forward + # answer=api.send_manifold_query (manifold_query) + hard_wired_answer = [ {'slice_hrn':'a.b.c'}, {'slice_hrn':'ple.inria.foo' } ] + answer=hard_wired_answer + return HttpResponse (json.dumps(answer), mimetype="application/json") + +#################### +# to enable : see CSRF_FAILURE_VIEW in settings.py +# probably we want to elaborate this one a little in real life +# at least we can display the reason in the django output (although this turns out disappointing) +failure_answer=[ "csrf_failure" ] +def csrf_failure(request, reason=""): + print "CSRF failure with reason '%s'"%reason + return HttpResponseForbidden (json.dumps (failure_answer), mimetype="application/json")