Express CORS:所请求的资源上不存在“ Access-Control-Allow-Origin”标头。因此,不允许访问原始“空”

时间:2018-11-20 18:51:48

标签: reactjs server cors

我正在React.js中做一个项目,我必须获取API的数据,然后得到

  

请求中没有Access-Control-Allow-Origin头   资源。因此,不允许访问原始“空”。

问题

即使在server.js中也是如此:

const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const cors = require('cors');
const port = process.env.PORT || 5000;

app.use(cors())

app.use(function(req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Credentials', true);
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, 
Content-Type, Accept');
res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, 
DELETE');
next();
});

app.use(bodyParser.urlencoded({ extended: true }))

app.use(bodyParser.json())

app.listen(port, () => console.log(`Listening on port ${port}`));

有人可以帮助我,因为我看到了20个与此相关的主题,并且我做了评论中给出的所有解决方案。

谢谢!

编辑:如果可以,请求的状态码为304

1 个答案:

答案 0 :(得分:1)

在您的服务器中更改以下行:

 app.use(cors({origin:"http://localhost:3000"}));

或者无论您的主机路径是什么。