本地NodeJS服务器上的CORS问题



我正在使用fetch web API从reactJS发送post方法请求,以表达本地主机上不同端口的NodeJS服务器。

Client Fetch API

fetch("http://localhost:8081/test", 
{
method: "post",
mode:"no-cors",
headers: {
'Content-Type': 'application/json',
},        
body: JSON.stringify({
username : "John Doe",
password : "It's a secret"
})
}).then(function(response)
{
if(response.ok)
{
return response.json();
}else
{
console.log(response)
}
}).then(function(body) { console.log(body); }).catch((error) => { console.log(error) });

Server - Express NodeJS

var express = require('express');
var bodyParser = require('body-parser');
var cors = require('cors');
var app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cors())
app.post('/test', function (req, res) 
{
return res.send({ message: 'Any response' });
})

我从客户端收到我的POST数据没有问题,但是我没有从服务器得到响应。几乎尝试了一切,但我得到这个错误的响应

body: (...)
bodyUsed: false
headers: Headers {}
ok: false
redirected: false
status: 0
statusText: ""
type: "opaque"
url: "" 

感谢您的帮助。

感谢@mehowthe,此问题已通过删除mode:"no-cors"

修复。

相关内容

  • 没有找到相关文章

最新更新