def session_settings(request: HttpRequest) -> HttpResponse:
if request.method == 'POST':
data = json.loads(request.body.decode("utf-8"))
if 'viewer_parameters' in data:
if "viewer_parameters" not in request.session:
request.session["viewer_parameters"] = {}
for k, v in data.items():
if not k == 'viewer_parameters':
request.session["viewer_parameters"][k] = v
request.session.modified = True
return HttpResponse(json.dumps({'result': "ok"}), content_type="application/json; charset=utf-8")
elif request.method == 'GET':
data = json.loads(request.body.decode("utf-8"))
if 'viewer_parameters' in data:
if "viewer_parameters" not in request.session:
request.session["viewer_parameters"] = {}
request.session["viewer_parameters"]["image_width"] = 900
request.session.modified = True
return HttpResponse(
json.dumps(request.session["viewer_parameters"]), content_type="application/json; charset=utf-8"
)
return HttpResponse(json.dumps({'result': "error"}), content_type="application/json; charset=utf-8")
else:
return HttpResponse(json.dumps({'result': "error"}), content_type="application/json; charset=utf-8")
# TODO: Generalize this script for several providers.
评论列表
文章目录