Django服务器 解析小程序发送的json二进制字符串
https://blog.csdn.net/qq_25068917/article/details/81041048
http://www.cnblogs.com/Liang-jc/p/9326680.html
小程序 解析Django服务器返回的json二进制字符串(字典)
https://blog.csdn.net/qiushi_1990/article/details/75912945
总结:
django服务端:(获取和返回)
获取post提交的数据2种情况
1 获取post的键值数据:
小程序header 设置为 "Content-Type": "application/x-www-form-urlencoded"
2 获取post的json格式的数据:
小程序header 设置为 "Content-Type": "application/json
详细介绍:http://www.cnblogs.com/zhangdewang/p/9222952.html
1获取客户端数据,是第二种情况:
接受到post的json格式的数据,用json.loads解析json二进制字符串
postBody = request.body
json_result = json.loads(postBody)
name =json_result['name']
dic = {
'name': user.name,
'email': user.email,
'num': user.number
}
return JsonResponse(dic)
注:关于JsonResponse(dic)的详细介绍:
JsonResponse 对象:
class JsonResponse(data, encoder=DjangoJSONEncoder, safe=True, json_dumps_params=None,**kwargs)
这个类是HttpResponse的子类,它主要和父类的区别在于:
1 默认Content-Type 被设置为:application/json
2 data参数:data应该是一个字典类型,
3 safe 参数:true,false
默认参数是True: 传入的data数据类型不是字典类型,就会抛出TypeError异常。
设置为False :data可以填入任何 能被转换为JSON格式的对象,如list, tuple, set
https://www.cnblogs.com/guoyunlong666/p/9099397.html
微信小程序客户端:
1 发送数据时
data{} header 设置为 "Content-Type": "application/json"
2 接收服务器的返回数据时,
1 js:获取字典res.data.name ,通过dic.name 获取字典的value,
setdata传递给 绑定变量, 传递给wxml,显示
2 js:获取字典res.data,setdata传递给 绑定变量, 再传递给wxml
wxml:通过绑定变量.name 获取字典的value,显示
Django获取数据
request.body:类型和内容
b'{"name":"\xe7\x94\xa8\xe6\x88\xb73","email":"qwew222","num":"321222"}'
json.loads(postBody):
{'name': '用户3', 'email': 'qwew222', 'num': '321222'}
request.body返回bytes类型。
如何获取 请求体中的如下JSON数据
{"name": "fenghua", "age": 24}
方法:获取到的是原始二进制数据,要进行解码
(字符串化,得到json数据)json_dict化(将json数据转换成字典)
本文来自qq_25068917 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_25068917/article/details/81041048?utm_source=copy