问题简介
用Postman向Django后端发送携带数据时,利用request.POST.get(“xxx”)总得到None
# 问题详情 利用Postman向Django后端发送携带的Json数据如下(wireshark抓包):

print(request.POST.get('case_id'))
None
原因分析:
request.POST.get()接口为接收并解析的是form-data,而传送的是Json数据时,会因编码方式不同而无法解析,进而得不到想要的键值对。
解决方案:
方法一:
改变代码解析时的编码方式:
import json
data = json.loads(request.body.decode('utf-8'))
case_id = data.get('case_id')
方法二:
在Postman中修改发送的携带数据格式为form-data:

print(request.POST.get('case_id'))
1
注:以上方法仅供参考
在使用Postman向Django后端发送Json数据时,通过request.POST.get()始终获取到None。原因是request.POST.get()只解析form-data类型的数据。解决方案包括修改Django代码以适应Json数据或在Postman中将请求数据格式改为form-data。
1261

被折叠的 条评论
为什么被折叠?



