django 获取post传递的json数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django 获取post传递的json数据相关的知识,希望对你有一定的参考价值。
request.POST.get('ID','')获取post传递过来的ID,但是没有取到ID值,打印了传递的数据,如下所示,为什么取不到呢
因为客户端传递过来的数据是json数据,可以看成一个json对象。不是传过来的post表单,所以你用request.POST.get('ID', '')这种肯定取不到值的。
def datasave(request):dict =
info = 'Data log save success'
try:
if request.method == 'POST':
req = simplejson.loads(request.raw_post_data)
username = req['username']
password = req['password']
datas = req['datas']
game_id1 = datas[0]['game_id']
except:
import sys
info = "%s || %s" % (sys.exc_info()[0], sys.exc_info()[1])
dict['message']=info
dict['create_at']=str(ctime())
json=simplejson.dumps(dict)
return HttpResponse(json)
request.raw_post_data表示的是从客户端发送过来的原始数据,为了纯字符串, 通过simplejson的loads方法将其转换为字典数据类型req.
上面的代码也演示了如何以JSON格式作为响应值, 而非html, 即通过simplejson的dumps方法, 将字典数据dict序列化为字符串形式,将通过HttpResponse返回.
我的解决了:
request.POST.get('ID','') 获取不到数据, 用了如下语句就获取到了
request.data.get('ID', '')以上是关于django 获取post传递的json数据的主要内容,如果未能解决你的问题,请参考以下文章
Django 无法通过request.POST.get()获取数据的问题
php用curl的post方法传递json包的时候,接受方是怎么获取的呢
FineUI MVC 前端获取表格Json通过Post传递后台