使用DRF与simple-JWT时CURL登录请求出现JSON解析错误如何解决?
问题原因与解决方案
问题根源:curl命令中
-d参数的JSON字符串外层使用双引号,内部键值对也用双引号,shell解析时会将内部双引号识别为字符串结束标记,导致实际发送的JSON格式破损,服务器无法正确解析。修复方案:
- 将JSON字符串的外层引号改为单引号,避免内部双引号被shell解析:
curl -X POST -H "Content-Type: application/json" -d '{"email":"anyone@gmail.com", "password":"Sajeyks254"}' http://127.0.0.1:8000/login/ - 或者对内部的双引号进行转义(添加反斜杠
\):curl -X POST -H "Content-Type: application/json" -d "{\"email\":\"anyone@gmail.com\", \"password\":\"Sajeyks254\"}" http://127.0.0.1:8000/login/
- 将JSON字符串的外层引号改为单引号,避免内部双引号被shell解析:
内容的提问来源于stack exchange,提问作者Random User
相关产品推荐
相关产品推荐

