需要从本地主机发出 CORS 请求 - 标准解决方案似乎无法按预期工作



我需要从Localhost发出CORS请求。我已经安装并打开了允许控制式镀铬插件,当我徘徊在菜单项上时,它显示了:"允许控制 - 允许孔: *"。我创建了一个带有以下内容的.bat文件:

start chrome http://localhost:8080/MyPage.html --disable-web-security --user-data-di

这将在预期的URL上打开一个新的Chrome实例,但CORS请求仍然失败,但有以下错误:

Failed to load [rest-url]: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8080' is therefore not allowed access.

您可以推荐任何解决方法吗?

您可以显示代码,并给我们提供有关您正在使用的技术等的更多信息?

似乎您没有发送"前飞行" - 重新quest,您的前飞行预要求不包含所需的标头,否则您的遥控器不会返回正确的标题:

例如,假设浏览器提出以下标头的请求:

Origin: http://yourdomain.com
Access-Control-Request-Method: POST
Access-Control-Request-Headers: X-Custom-Header

然后,您的服务器应以以下标题响应:

Access-Control-Allow-Origin: http://yourdomain.com
Access-Control-Allow-Methods: GET, POST
Access-Control-Allow-Headers: X-Custom-Header

信用为:@monsur

另请参阅:CORS-如何" preflight" httprequest?

Access-Control-Request-Headers需要包含所有自定义标题,并使用真实的请求包含您发送的Allong的所有自定义标题,如果不是,它将失败。至少对我而言,错误消息有点神秘,并且不总是指向正确的方向。

最新更新