我尝试使用Fetch API PUT更新JSON上的某些数据,但在控制台中找不到404。 当我在POSTMAN中对其进行测试时,还可以(200)。 我怀疑提取时出了点问题。
在这里获取代码。
fetch(`/api/customers/21111`, {
method: "PUT",
headers: {
Accept: "aplication/json",
"Content-Type": "aplication/json"
},
body: JSON.stringify({
Variabel: "coba"
})
}).catch(function(error) {
console.log(
"There has been a problem with your fetch operation: ",
error.message
);
});
};
这里是Express代码。
app.put("/api/customers/:id", (req, res) => {
const customer = customers.find(c => c.id === parseInt(req.params.id));
if (!customer) res.status(404).send("Id is not found");
const { error } = validateCourse(req.body);
if (error) {
res.status(404).send(error.details[0].message);
return;
}
customer.Variabel = req.body.Variabel;
res.send(customer);
});
function validateCourse(customer) {
const schema = {
Variabel: Joi.string()
.min(3)
.required()
};
return Joi.validate(customer, schema);
}