我已经使用django rest框架创建了restfulapi。用户终结点是
/api/v1/users
我想创建新用户。我以JSOn格式发送用户数据。
{
"username": "Test1",
"email": "test1@gmail.com",
"first_name": "Test1",
"last_name": "Test2",
"password":"12121212"
}
我正在使用Chrome扩展Postman来测试api。但用户数据尚未保存。答案是:
{
"detail": "Unsupported media type \"text/plain;charset=UTF-8\" in request."
}
附加屏幕截图
您错过了在headers部分添加
Content-Type
头。只要将Content-Type
头设置为application/json
就可以了。见下图:
另外,如果在使用Postman发出
POST
请求时遇到错误{"detail": "CSRF Failed: CSRF token missing or incorrect."}
,您可能还需要在头中包含CSRF令牌。在这种情况下,添加一个X-CSRFToken
头,并将value作为CSRF令牌值。要完成此问题,您需要执行两个步骤:
application/json
值添加Content-Type
头Token {YOUR_CUSTOM_TOKEN}
值添加Authorization
头以传递CSRFToken注意:如果要使用会话进行身份验证,则不需要执行第二步,但如果要将此API用于移动设备,则必须将授权头传递给服务器
我希望能帮上忙
如果有人遇到像我这样的问题,我会贴出这个答案。
我正在使用Angular 2和Django Rest Framework制作的API开发一个前端应用程序,我以前用以下报头发送请求:
它工作得很好,直到我在Fire Fox上尝试它,我无法加载所需的数据,我通过添加以下头来解决它
这里有一个解释,^{} 告诉服务器数据的内容类型是什么,而^{} 告诉服务器客户端将访问什么内容类型。
关于这个问题,这里有一个很好的明确答案:
相关问题 更多 >
编程相关推荐