【发布时间】:2018-10-26 17:12:51
【问题描述】:
当我在 Chrome 浏览器中运行我的 ReactJS 示例 Web 应用程序时,我遇到了以下 CORS 问题。
Access to XMLHttpRequest at 'https://XXXX.XXX/YYY/ZZZ/' from origin 'http://localhost:3003' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
我阅读了解决方案并安装了 CORS Chrome 插件。我在 CORS 设置中添加了 REST URL,如下面的屏幕截图所示。我清除了 Chrome 浏览器历史记录并尝试运行 ReactJS 网络应用程序,但它仍然抛出相同的错误。有人可以指导如何准确解决这个问题吗?我也试过了
'Access-Control-Allow-Headers': '*',
'Access-Control-Allow-Origin': '*',
在代码中,但未修复此问题。
【问题讨论】:
-
你在用create react app吗?
-
没有。它只是一个简单的基本 reactjs web 代码,它使用 axios 调用一个休息服务。相同的代码适用于其他公共休息 URL,例如:jsonplaceholder.typicode.com/users - 使用相同的代码没有问题
-
在这种情况下,您需要使用 proxy 来解决 CORS 问题。如果你使用 webpack-dev-server check that tutorial。或者你可以安装设置http-proxy-middleware
-
您能详细说明一下吗?如何设置代理?
-
是的,因为 jsonplaceholder 等...启用了 CORS...但XXXX.XXX/YYY/ZZZ 没有...