Django/python正在从JavaScript转换我的帖子数据
当我通过Ajax向Django发布JSON字符串时,它会将其转换为无效的JSON格式。具体来说,如果我查看Firebug中的post数据,我将发送:Django/python正在从JavaScript转换我的帖子数据,javascript,python,django,json,unicode,Javascript,Python,Django,Json,Unicode,当我通过Ajax向Django发布JSON字符串时,它会将其转换为无效的JSON格式。具体来说,如果我查看Firebug中的post数据,我将发送: info {'mid':1,'sid':27,'name':'aa','desc':'Enter info' } 然而,当我在django请求中访问它时,我看到: u'{\'mid\':1,\'sid\':27,\'name\':\'aa\',\'desc\':\'Enter Info\'} 当我尝试用json.loads解析它时,它会随
info {'mid':1,'sid':27,'name':'aa','desc':'Enter info' }
然而,当我在django请求中访问它时,我看到:
u'{\'mid\':1,\'sid\':27,\'name\':\'aa\',\'desc\':\'Enter Info\'}
当我尝试用json.loads解析它时,它会随着一条无效的json消息而消失
我在以下地址发帖:
data.info = "{'mid':1,'sid':27,'name':'aa','desc':'Enter info' }";
$.ajax({url: cmdAjaxAddress,
type: "POST",
data: data,
success: function(txt) {
result = txt;
},
async: false });
我在django阅读的帖子如下:
if request.is_ajax() and request.method == 'POST':
infoJson = request.POST['info']
info = json.loads(infoJson);
任何帮助都将不胜感激。您如何编码JSON字符串?单引号必须是双引号,根据:
如果OP首先使用
simplejson.dumps()
创建JSON,这将自动发生。您收到的确切错误消息是什么?
In [40]: s1 = "{'mid':1,'sid':27,'name':'aa','desc':'Enter info' }"
In [41]: simplejson.loads(s1)
JSONDecodeError: Expecting property name: line 1 column 1 (char 1)
In [42]: s2 = '{"mid":1,"sid":27,"name":"aa","desc":"Enter info" }'
In [43]: simplejson.loads(s2)
Out[43]: {'desc': 'Enter info', 'mid': 1, 'name': 'aa', 'sid': 27}