我想与Axios发出一个put请求,到目前为止我已经完成了这个操作:
export function updateSettings(item) {
return dispatch => {
console.log(item)
return axios.put(`/locks`).then(response => {
console.log(response)
})
}
}
当我在console.log item
时,我可以看到我在输入框中输入的所有内容,但后来我得到了404.我知道我有那个URI。有谁知道如何解决这个问题?
答案 0 :(得分:2)
put响应需要一个对象发送。 put的正确axios是这样的:
export function updateSettings(item) {
return dispatch => {
console.log(item)
return axios.put(`/locks`, item).then(response => {
console.log(response)
})
}
}
这很可能是你得到错误的原因,因为PUT的对象是未定义的。
您可以在下面的链接上观看此列表,了解如何使用axios发出正确的请求。 Axios request methods
答案 1 :(得分:2)
PUT 请求需要资源的标识符(例如id)和要更新的有效负载。您似乎没有确定要更新的资源,因此 404 。
你需要像这样的 id 和项。
export function updateSettings(id, item) {
return dispatch => {
console.log(item)
return axios.put(`/locks/${id}`, item).then(response => {
console.log(response)
})
}
}