Bug奇遇记
环境
客户端:android
服务端:django
问题产生
当你明明使用post方法发起了一个request到服务器,而在服务器那端使用request.POST[‘key’]的方法来获取value的时候,你可能会遇到MultiValueDictKeyError错误。
解决办法
先提取body里面的json,再通过json获取数据
json_request = json.loads(request.body)
value = json_request['key']
产生原因
1.request.POST[‘key’]获取数据的时候,body数据类型应该是
application/x-www-form-urlencoded,浏览器原生的form表单数据类型,即浏览器提交的数据格式一般是这样。
2.而如果你的body数据类型是application/json:json,你想获取其中数据必须要先转换为json样式。
参考
1.https://stackoverflow.com/questions/20206656/sending-post-json-from-android-and-receiving-on-django
2.https://blog.youkuaiyun.com/weixin_30295091/article/details/96148574