我正在尝试使用 Django/Python 处理传入的 JSON/Ajax 请求。
request.is_ajax()
是 True
在请求中,但我不知道 JSON 数据的有效载荷在哪里。
request.POST.dir
包含这个:
['__class__', '__cmp__', '__contains__', '__copy__', '__deepcopy__', '__delattr__',
'__delitem__', '__dict__', '__doc__', '__eq__', '__ge__', '__getattribute__',
'__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__',
'__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__',
'__setattr__', '__setitem__', '__str__', '__weakref__', '_assert_mutable', '_encoding',
'_get_encoding', '_mutable', '_set_encoding', 'appendlist', 'clear', 'copy', 'encoding',
'fromkeys', 'get', 'getlist', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues',
'keys', 'lists', 'pop', 'popitem', 'setdefault', 'setlist', 'setlistdefault', 'update',
'urlencode', 'values']
请求发布密钥中显然没有密钥。
当我查看 Firebug 中的 POST 时,请求中发送了 JSON 数据。
原文由 user122299 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您将 JSON 发布到 Django,我认为您需要
request.body
(Django < 1.4 上的request.raw_post_data
)。这将为您提供通过邮寄发送的原始 JSON 数据。从那里你可以进一步处理它。这是一个使用 JavaScript、 jQuery 、jquery-json 和 Django 的示例。
脚本:
姜戈:
姜戈<1.4: