由于访问控制检查,ios Safari XMLHttpRequest 无法加载

Posted

技术标签:

【中文标题】由于访问控制检查,ios Safari XMLHttpRequest 无法加载【英文标题】:ios Safari XMLHttpRequest cannot load due to access control checks 【发布时间】:2018-11-12 14:31:46 【问题描述】:

我正在尝试使用一些多部分数据进行 POST 请求,它可以在我检查过的所有其他浏览器和设备上完美运行,但在 ios Safari 上它不起作用并出现以下 3 个错误:

Origin [URL HERE] is not allowed by Access-Control-Allow-Origin.
Failed to load resource: Origin [URL HERE] is not allowed by Access-Control-Allow-Origin.
XMLHttpRequest cannot load [URL HERE] due to access control checks.

在我的服务器上,我相信我已经正确设置了 cors。

顺便说一句,我正在使用 iOS 模拟器,它确实可以在 MacOS Safari 上运行

有什么想法吗?

【问题讨论】:

我也有同样的问题 您找到解决方案了吗?我也有同样的问题。 iOS11 causing CORS Issues in all mobile browsers的可能重复 【参考方案1】:

您是否有混合的 http/https 流量,例如您的 webapp 托管在 https 中,但您的 POST 转到 http 服务器?不幸的是,如果发生这种情况,Safari 不会给出很好的错误消息。我会检查 curl 以查看您请求的 url 是否返回您期望的数据和标头。

【讨论】:

以上是关于由于访问控制检查,ios Safari XMLHttpRequest 无法加载的主要内容,如果未能解决你的问题,请参考以下文章

Safari:重新加载后“由于访问控制检查而无法加载 Fetch API”

Safari调试iOS中的JS

Safari 网络检查器仅显示源、控制台和审核

无法从 Safari Web Inspector 向 iOS 设备发送控制台命令

Mac的Safari浏览器如何打开检查元素网页控制台

iOS 6 - 删除iPad的控制台日志 - 如何在Windows上使用Web检查器?