Commit 88cae543 by David Ormsbee

Merge pull request #1085 from edx/ormsbee/ss_err_checking

Add extra error checking and logging to Software Secure callback
parents 89c94b4f 61e7cbb5
......@@ -170,7 +170,17 @@ def results_callback(request):
verified to be who they said they are.
"""
body = request.body
body_dict = json.loads(body)
try:
body_dict = json.loads(body)
except ValueError:
log.exception("Invalid JSON received from Software Secure:\n\n{}\n".format(body))
return HttpResponseBadRequest("Invalid JSON. Received:\n\n{}".format(body))
if not isinstance(body_dict, dict):
log.error("Reply from Software Secure is not a dict:\n\n{}\n".format(body))
return HttpResponseBadRequest("JSON should be dict. Received:\n\n{}".format(body))
headers = {
"Authorization": request.META.get("HTTP_AUTHORIZATION", ""),
"Date": request.META.get("HTTP_DATE", "")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment