Express CORS——对飞行前请求的响应不';无法通过访问控制检查
我很难让CORS工作。我正在尝试从我设置的Heroku应用程序中获取数据。我从Redux获取数据,并使用ExpressJS作为后端。我一直在看CORS的文件,但还是弄不清楚 这是Express中的外观Express CORS——对飞行前请求的响应不';无法通过访问控制检查,express,heroku,redux,cors,fetch,Express,Heroku,Redux,Cors,Fetch,我很难让CORS工作。我正在尝试从我设置的Heroku应用程序中获取数据。我从Redux获取数据,并使用ExpressJS作为后端。我一直在看CORS的文件,但还是弄不清楚 这是Express中的外观 var express = require('express'); var router = express.Router(); var cors = require('cors') router.options('/', cors()) router.use((req, res, next)
var express = require('express');
var router = express.Router();
var cors = require('cors')
router.options('/', cors())
router.use((req, res, next) => {
res.append('Access-Control-Allow-Origin', ['*']);
res.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.append('Access-Control-Allow-Headers', 'Content-Type');
next();
});
router.get('/', cors(), function(req, res, next) {
res.json({...})
}
我已在我的应用程序中将代理设置为,但我的应用程序正在3000上运行。我把它包括在内,以防它可能成为问题,但我不知道它是什么
我的Redux文件是这样设置的
return dispatch => {
const url = "https://app-name.herokuapp.com/users";
return fetch(url, {
method: 'GET',
mode: 'cors',
headers: { 'Content-Type': 'text' }
})
完整错误为:“加载失败:对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许原点”标头。因此不允许原点“”访问。”现在我收到此错误“加载失败:飞行前的响应无效(重定向)”
var express = require('express');
var app = express();
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Methods", "GET,POST");
// res.header("Access-Control-Allow-Headers", "Content-Type");
next();
});