nginx 加了允许跨域为什么还是会偶尔出现跨域的情况

2019-05-23 15:49:57 +08:00
 cnoder

server {
    add_header Access-Control-Allow-Origin *;
...
我就是这样加的

偶尔会这样
Access to XMLHttpRequest at '...' from origin '...' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

4113 次点击
所在节点    程序员
8 条回复
yoshiyuki
2019-05-23 16:59:28 +08:00
CORS 分简单和复杂两种情况
要么加了额外 header,要么带了 cookie,要么使用了 GET/POST 以外的 method,请自查
si
2019-05-23 17:13:40 +08:00
复杂请求还要做其他处理,详细情况你可以看看这个文章。
http://www.ruanyifeng.com/blog/2016/04/cors.html
Danfi
2019-05-23 17:14:09 +08:00
可能你的服务返回了 4**,5**等状态码
Sparetire
2019-05-23 21:21:23 +08:00
CORS 是很多个头部配合使用的。。复杂情况这一个头部不够的
Takamine
2019-05-23 22:56:58 +08:00
这样不会不安全吗。_(:з」∠)_
ericgui
2019-05-24 00:58:18 +08:00
大概率是 Chrome 的锅
因为 chrome 会在某些时候给个 CORS error,实际上这是出于安全考虑,不给你发送实际的 error message

你应该用 postman 来查看真实的 error message
cnoder
2019-05-24 09:47:51 +08:00
@Sparetire
@yoshiyuki
已经加上附言内的 header 了
yoshiyuki
2019-05-24 09:55:57 +08:00
@cnoder 参考 6#,试试其他浏览器能否复现,判断锅的位置

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/566988

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX