Ajax向后台发送简单或复杂数据,后端获取数据的方法
Posted Erudite
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ajax向后台发送简单或复杂数据,后端获取数据的方法相关的知识,希望对你有一定的参考价值。
Ajax向后台发送消息分为2种情况:
- Ajax正常返回,并且返回数据格式不是很复杂
- 复杂情况,前端会将复杂 数据进行反序列化为一个JSON串
下面本人就根据这 2 种情况,在后端如何获取数据的方法与大家分享。
第一种情况:(数据简单)
前端:
$.ajax({ ... data: {name: 11, age: 12, xx: [11, 22, 33]}
... }) $.post(url, data, callback)
后端:
request.POST request.POST.get(\'name\') request.POST.get(\'age\') request.POST.get(\'xx\')
总结:第一种方法获取数据简单,无需对返回的数据做过多的处理,在后端即能正常获取。
第二种情况:(数据复杂)
前端:
$.ajax({ ... data: JSON.stringfy({name: {k1:1, k2:666}, xx: [11, 22, [11, 22, 33]]}) ... }) $.post(url, JSON.stringfy({name: {k1:1, k2:666}, xx: [11, 22, [11, 22, 33]]}), callback)
后端:
request.body info = json.loads(request.body.decode(\'utf-8\')) info[\'name\'] info[\'xx\']
总结:面对前端传过来的复杂数据,后端接收这些数据不能用POST接收,要用body接收该字节,再将字节转换为字符串,就能获取传过来的字典。
以上是关于Ajax向后台发送简单或复杂数据,后端获取数据的方法的主要内容,如果未能解决你的问题,请参考以下文章
向后台提交数据:通过form表单提交数据需刷新网页 但通过Ajax提交数据不用刷新网页可通过原生态Ajax或jqueryAjax。Ajax代码部分