[英]post request works with postman but not in browser, via axios
我正在开发MERN应用。 当我通过邮递员向"/collections"
发出投递请求时,得到了预期的响应,并且数据库被新文档更新。 当我在浏览器中发出请求时,代码将运行,但是数据库未获取新文档。 这是我的提交处理程序(reactjs):
handleSubmit = async e => {
e.preventDefault();
try {
await axios.post("/collections", this.state.data);
} catch (error) {
console.log(error.message);
}
this.props.history.push("/collections");
};
当我提交相关表单时,该代码的最后一行运行,并且我的浏览器返回到"/collections"
。 该代码不会引发或记录任何错误,但是提交不会创建新文档,正如mongodb Compass所揭示的那样。 同样奇怪的是,此代码是从应用程序的另一部分修改而来的,该部分在浏览器中运行良好:
handleSubmit = async e => {
e.preventDefault();
await axios.post("/entries", this.state.data);
this.props.history.push("/entries");
};
这很好用,但是发布到"/collections"
却没有。 有什么帮助吗?
作为参考,这是节点中的发布路线:
router.post("/", async (req, res) => {
try {
const newCollection = await Collection.create(req.body);
res.send(newCollection);
} catch (error) {
res.send(error.message);
}
});
感谢Pedro Brost,我弄清楚了。 在开发工具中的“网络”下,由于猫鼬模式的设置方式,我收到验证错误。 我不知道开发工具中是否包含“网络”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.