django - request.raw_post_data 与 request.body

request.raw_post_data 重命名成了 request.body - 在1.3版本之后。

这是当时 起票 的讨论内容:https://code.djangoproject.com/ticket/17323

这就是之后的区别了。

所以,在处理json的时候,1.3的代码继续使用:

if request.method == 'POST':
         # 明白了这两个数据结构的区别,就明白怎么处理json数据了    
         print request.POST    
         print request.raw_post_data    

 

可以使用 requests 包,发起包含json的请求:

>>> import json
>>> import requests
>>> url = 'https://api.github.com/some/endpoint' >>> payload = {'some': 'data'} >>> headers = {'content-type': 'application/json'} >>> r = requests.post(url, data=json.dumps(payload), headers=headers)

 

 

 

posted @ 2014-03-24 14:03  kv9  阅读(2310)  评论(0编辑  收藏  举报