【发布时间】:2017-09-16 22:53:23
【问题描述】:
当在包含查询参数(例如 https://example.com/api?v=1)的 URL 上尝试 Safari 10.1 上的 CORS request 时,Safari 会说
XMLHttpRequest 由于访问控制检查而无法加载
Chrome/Firefox 运行良好。
对于来自没有?v=1 的页面的请求,Safari 也可以正常工作。
我尝试从
更改服务器响应标头Access-Control-Allow-Origin: https://example.com
到
Access-Control-Allow-Origin: https://example.com/api?v=1
但这会破坏 Chrome。
有什么建议吗?
【问题讨论】:
-
试试
encodeURI('https://example.com/api?v=1') -
已尝试,没有变化:对预检请求的响应未通过访问控制检查:“Access-Control-Allow-Origin”标头的值“test.com/page?v=1”不等于提供的原产地。因此不允许访问 Origin 'test.com'。
-
我在本地运行网站时遇到了与 Safari 相同的问题。
-
你们中的任何人找到解决方案了吗@Gaz 或 Marius?
-
access-control-allow-origin 有点晕...能否请您清楚地指定您的 html 页面所在的 url、XHR 请求内容的 url 以及您添加访问权限的服务器-control-allow-origin to?
标签: javascript safari cors