【发布时间】:2014-11-23 06:46:59
【问题描述】:
据我所知,“Access-Control-Allow-Origin”被用作 CORS 的一部分,以限制哪些主机可以从给定的 api 服务器请求数据。此标志/变量值由服务器设置为响应的一部分。
我确实偶然发现了这个chrome extension,上面写着:
允许您从任何来源请求任何带有 ajax 的网站。添加 响应 - 'Access-Control-Allow-Origin: *' 标头
开发者工具。
摘要添加到响应头规则 - 'Allow-Control-Allow-Origin: *'
提示 使用 chrome 标志可以获得相同的行为 [http://www.chromium.org/developers/how-tos/run-chromium-with-flags]
chrome --disable-web-security
或
--allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt
这意味着我可以从客户端更改响应标头。所以这意味着如果我在服务器上设置:'Access-Control-Allow-Origin:http://api.example.com'这个设置可以被客户端'Access-Control-Allow-Origin:*'覆盖。或者可能是我不想支持 cors - 所以我没有设置它,但这仍然会显示我支持 CORS。
如果是这样,我的服务器端设置有什么意义?这不是多余的吗??
可能是我太天真了,没有了解它的基础。
【问题讨论】:
标签: security google-chrome cors