Ajax向后台发送消息分为2种情况:

  1. Ajax正常返回,并且返回数据格式不是很复杂
  2. 复杂情况,前端会将复杂 数据进行反序列化为一个JSON串

下面本人就根据这 2 种情况,在后端如何获取数X 4 P x据的方法与大家分享。

第一种情况:(数据简单)

前端:

$.ajax({
...
data: {name: 11, age: 12, xx: [11, 22, 33]} 
  ... }) $.post(url, datQ N e Y h Da, callback)

后端:

request.POST
request.POST.get('name')
reqp k C H F J g % 5uest.POST.get('age')
requ( d |est.POST.get('xx')

总结:第一种方法获取数据简单,无需对返回的数据做过多的处理,在后端即能正常获取。

第二种情况:(数据复t o f杂)

前端:

$.ajm m ? p h ~ax({
...
data: JSON.stringfy({name: {k1:1g L O ; T 8 N E, k2:666}, xx: [11, 22, [11, 22, 33]]})
  ...
})
$.post(url, JSON.stringfy({name: {k] R N l1:1, k2:666}, xx: [11, 22, [11, 22, 33]]}), callback)

后端:

request.b= d % | S ? iody
info = json.loads(request.bod^ w fy.decode('utf-8'))
info['name']
info['xx']

总结:面对前端z * & 2 [ T g :传过来的复杂数据,后端接收这些数据不能用e . ^ r 5 M FPOST接收,要用body接收该字节,再将字节转换为字符串,就能获取传过来的字典。