我已经设置了标题然后还有 CORS 策略错误(ReactJS)

Posted

技术标签:

【中文标题】我已经设置了标题然后还有 CORS 策略错误(ReactJS)【英文标题】:I have set the headers then also CORS policy error is there(ReactJS) 【发布时间】:2021-03-13 08:03:42 【问题描述】:
axios.get("https://url.example.com/b/478L", 
        headers: 
            'Access-Control-Allow-Origin': '*',
            'Content-Type': 'application/json',
        
    ).then((response) => console.log(response.data))
        .catch((error) => console.log(error))

我的网址不同。

错误:

从源“http://localhost:3000”访问“https://url.example.com/b/478L”处的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。

【问题讨论】:

后端呢,你自己做的? 没有jsonkeeper的url 还有其他解决办法吗? 看这个问题***.com/questions/43871637/… 不适合我。 【参考方案1】:

我不知道服务器是如何构建的。但是每个后端框架都有处理 CORS 的功能。 例如,在 ExpressJS 中,您可以使用 cors 中间件来处理 CORS 策略。 所以尝试在服务器端解决这个问题。

【讨论】:

后端不在我的控制范围内。它是一个jsonkeeper的url 还有其他解决办法吗? @Prem Jogi 请尝试设置 Access-Control-Allow-Credentials 标头。【参考方案2】:

如果您有自己的后端,则可以解决此问题。 对于 Node/Express 后端的示例,您可以使用 cors library npm link here

然后在你的 app.js 中添加这一行,

//IMPORT THE LIBRARY
const cors = require('cors');


//ALLOW REQUEST FROM ANY DOMAIN
app.use(cors());

将修复错误。

如果不断收到此错误,请尝试不同的端点。或者你会发现一些有用的东西here

【讨论】:

以上是关于我已经设置了标题然后还有 CORS 策略错误(ReactJS)的主要内容,如果未能解决你的问题,请参考以下文章

使用 MEAN 堆栈应用程序(托管在 Heroku 上)消除 CORS 策略错误

关于客户端安全性,CORS 除了颠覆同源策略之外还有啥作用?

使用 axios cors 策略错误配置 nodejs rest api 服务器和 vue 项目

带有 Javascript 的 Dot Net Core Web API - CORS 策略错误

Heroku 服务器上的 CORS 策略问题

被 ionic-5 angular 中的 CORS 策略阻止