Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';t在我的express应用程序中解决CORS策略_Javascript_Reactjs_Express - Fatal编程技术网

Javascript Can';t在我的express应用程序中解决CORS策略

Javascript Can';t在我的express应用程序中解决CORS策略,javascript,reactjs,express,Javascript,Reactjs,Express,我一直在犯这个错误 被CORS策略阻止:请求的资源上不存在“Access Control Allow Origin”标头。如果不透明响应满足您的需要,请将请求的模式设置为“no cors”,以获取禁用cors的资源 这是我的快速代码 const express=require('express')) const app=express() 常数端口=3001 var redis=需要(“redis”), client=redis.createClient(); const{promisify}

我一直在犯这个错误

被CORS策略阻止:请求的资源上不存在“Access Control Allow Origin”标头。如果不透明响应满足您的需要,请将请求的模式设置为“no cors”,以获取禁用cors的资源

这是我的快速代码

const express=require('express'))
const app=express()
常数端口=3001
var redis=需要(“redis”),
client=redis.createClient();
const{promisify}=require('util')
const getAsync=promisify(client.get).bind(client);
app.get('/jobs',异步(req,res)=>{
const jobs=await getAsync('github');
res.header(“访问控制允许原点”http://localhost:3000");
res.header(“访问控制允许头”、“来源、X请求、内容类型、接受”);
返回res.send(作业);
})

app.listen(port,()=>console.log(`Example app listening on port${port}!`))
尝试使用
cors
中间件包在express app中启用核心

作为生产依赖项安装

npm install --save cors
例如:

const express = require('express');
const cors = require('cors');
const app = express();
const port = 3001
var redis = require("redis"),
    client = redis.createClient();
const { promisify } = require('util')
const getAsync = promisify(client.get).bind(client);
const allowedOrigins = ["http://localhost:3000"];

app.use(cors({
    origin: function (origin, callback) {
        if (!origin) return callback(null, true);
        if (allowedOrigins.indexOf(origin) === -1) {
            var msg = 'The CORS policy for this site does not ' +
                'allow access from the specified Origin.';
            return callback(new Error(msg), false);
        }
        return callback(null, true);
    }
}));

app.get('/jobs', async (req, res) => {
    const jobs = await getAsync('github');
    res.header("Access-Control-Allow-Origin", "http://localhost:3000");
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
    return res.send(jobs);
})
app.listen(port, () => console.log(`Example app listening on port ${port}!`))

你试过这个吗?你也可以添加客户端请求吗?我刚才解决了cors的一些问题。这是我的问题,所以: