我一直在研究这个问题,但我找不到满足我的答案。
我非常了解与标准网络浏览器中的网站相同的原始政策。当我开始开发一个使用原生webview并使用jQuery的.load
方法加载网站内容的移动应用程序时,我的问题出现了。通常在标准Web浏览器中,我会收到XHR加载错误。
那么,有关原生应用和交叉原始政策的规则是什么?
答案 0 :(得分:3)
机器人伍兹肯定是在正确的轨道上。在处理本机应用程序时,您在某种意义上是从file://而不是从https://发出请求。因为您没有通过HTTP协议发出请求,所以相同的规则不适用。从您的原生移动应用程序发出请求时,您应该毫无问题地向任何域发出请求。
如果您要将整个页面替换为webview中的正常内容,您只需要将域添加到PhoneGap / Cordova中的白名单中,这通常不会发生(您通常只是以块的形式请求数据)从您的服务器,而不是做window.location更改)。