使用jquery的.post提交,并期望得到多个数据,Python后台要使用json格式。
不指定datatype为json,让jquery自行判断数据类型。(注:跨域名请求数据,则使用 jsonp字符串)
若post指定数据类型json,则python取post数据,我觉着麻烦。让jquery智能判断,python返回字典最方便。
一般使用字典,而不是列表来返回 JSON内容.
import json
from django.http import HttpResponse
response_data = {}
response_data['result'] = 'failed'
response_data['message'] = 'You messed up'
return HttpResponse(json.dumps(response_data), content_type="application/json")
for correct - not specifying the mimetype will get you into trouble
正确-不指定mimetype 会导致麻烦
content_type should be used now --mimetype is now deprecated
mimetype 不推荐使用,应当使用content_type 。
不使用content_type,则只能接收第1个字符串。
环境:
python 2.7.6
django 1.6
根据百度来的文章,使用 django的simplejson,也被IDE建议使用json。
post的回调函数,只需要 :
function(data,status){
if(status == 'success') {
alert(data.box);
}}
使用.号来进行得对应Key值。
前端和后端都指定utf-8编码,python返回中文,直接 {'status':'成功'},连u前缀都不用。