所以我有一个 AJAX post JSON to Django,在我看来是在 request.body 中提取的。Request.body 看起来像这样:
{"c": {"cellid": 5}, "b": {"cellid": 8}, "e": {"cellid": 3}, "i": {"cellid": 9}, "k": {"cellid": 11}, "j": {"cellid": 10}, "l": {"cellid": 12}, "n": {"cellid": 7}, "q": {"cellid": 1}, "r": {"cellid": 4}, "w": {"cellid": 2}, "v": {"cellid": 6}}
我想将其放入 JSON 对象中以进行验证和清理过程,但是,当我尝试时:
json.loads(request.body)
ValueError: No JSON object could be decoded
SimpleJSON 说:
simplejson.loads(request.body)
JSONDecodeError: Expecting value: line 1 column 1 (char 0)
关于出了什么问题的任何指示?当我对上面的 JSON lint 进行处理时,它是有效的,那么解码有什么问题?
有趣的是,从这个问题来看,这似乎是 jQuery 的错,因为
jQuery.ajaxSettings.traditional = true;
修复了javascript中的问题。我不确定为什么会这样,有什么想法吗?