【发布时间】:2018-05-20 10:42:01
【问题描述】:
axios.put 方法在 axios.post 工作时不起作用。
这是发布请求的工作示例。 (示例)
let response = await axios.post(`${ROOT_URL}/urls/url/`, {
post_id,
password,
content
}, { headers });
console.log(response.status) // 201.
我只是复制并粘贴了有效的post请求,并为put请求修改了一些字段和方法。但它在服务器端返回 400 错误。
let response = await axios.put(`${ROOT_URL}/profile/update/`, {
title,
gender
}, { headers }); <- Server prints 400 HTTP error.
我使用Postman 进行了测试,并确认它适用于 put 方法。我不得不认为我的 axios.put 语法是错误的,但我不确定它与 post 方法有何不同。
如果你看到 axios 的官方文档页面,它看起来几乎一模一样。 Axios documentation link
而axios版本是0.16.2:"axios": "^0.16.2",
【问题讨论】:
-
我会确保服务器期待一个类似于
{title: 'title', gender: 'gender'}的对象,因为这是您的第二个参数扩展的对象。另外,你能发布代码来显示你的 headers 对象是什么样的吗? -
我会尝试查看服务器代码在到达端点时发生了什么。
-
是的,你是对的。我把性别加上'u'并打印了400。原因是我将后端性别字段设置为选择特定的字符串值。谢谢你的建议!
-
嗯...我应该删除问题吗? :)
标签: javascript reactjs react-native axios