我使用 django-rest-framework 创建了 RESTFul API。用户端点是: /api/v1/users
我想创建一个新用户,所以我以 JSON 格式发送用户数据:
{
"username": "Test1",
"email": "test1@gmail.com",
"first_name": "Test1",
"last_name": "Test2",
"password":"12121212"
}
我正在使用 Google Chrome 扩展 Postman 来测试 API。但是,发送请求后,用户数据并未保存。响应包含此错误:
{
"detail": "Unsupported media type \"text/plain;charset=UTF-8\" in request."
}
这是 Postman 中的请求详细信息:
原文由 Elisa 发布,翻译遵循 CC BY-SA 4.0 许可协议
您错过了在标头部分添加
Content-Type
标头。只需将Content-Type
标头设置为application/json
它应该可以工作。见下图:
此外,您可能还需要在标头中包含 CSRF 令牌,以防在使用 Postman 发出
POST
请求时出现错误{"detail": "CSRF Failed: CSRF token missing or incorrect."}
。在这种情况下,添加一个X-CSRFToken
标头,其值也作为 CSRF 令牌值。