Javascript 将post数据提取到expressjs导致找不到404服务器
拥有一个带有我自己的ExpressJSAPI后端的react前端。 特快。4.16.0 在react前端使用fetch获取数据工作得很好Javascript 将post数据提取到expressjs导致找不到404服务器,javascript,node.js,reactjs,express,Javascript,Node.js,Reactjs,Express,拥有一个带有我自己的ExpressJSAPI后端的react前端。 特快。4.16.0 在react前端使用fetch获取数据工作得很好 fetch('/desResData') .then(res => {....} 当我试图发布一些数据时,我得到了请求:“post 404(未找到)” 代码: 粗略地说,我可以从前端到后端进行静态通信,但我不能参数化我的请求 ExpressJS: router.get('/', async function (req, res, next
fetch('/desResData')
.then(res => {....}
当我试图发布一些数据时,我得到了请求:“post 404(未找到)”
代码:
粗略地说,我可以从前端到后端进行静态通信,但我不能参数化我的请求
ExpressJS:
router.get('/', async function (req, res, next) {
console.log(req.body) // tried with using req and without using it
findByProduct("product") // some async db operation // this part is working fine while fetching without any post parameters
.then(data => {
res.json()
})
将此添加到服务器代码中:
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS, HEAD');
next();
});
react代码的package.json内部:
"proxy": "http://localhost:serverport", <-- server port will be port of your node-express server
“代理”:http://localhost:serverport“,您必须编写router.post
(而不是router.get
)来处理HTTP post请求
请注意,获取的方法是POST
。但是您编写了router.get
,它处理方法为get
的请求
如果一条不存在的路线收到POST请求,express将给出404。即使同一路由有GET处理程序,这也适用
(提示:通过使用.GET
,.POST
,.PUT
,.PUT
,.DELETE
等,您可以为同一路由使用单独的GET、POST、PUT、DELETE等处理程序)。express代码看起来如何?您的后端代码是什么?你在使用express“.post(…)
?代理已经设置好了,添加标题选项对我不起作用。哦,天哪,这是一些非常基本的东西。。。。。解决了这个问题,得到了一些新的警告,但至少我的信息是通过:)非常感谢!
"proxy": "http://localhost:serverport", <-- server port will be port of your node-express server