Phonegap 和 Android 4.4.2 白名单不起作用
Posted
技术标签:
【中文标题】Phonegap 和 Android 4.4.2 白名单不起作用【英文标题】:Phonegap and Android 4.4.2 whitelist not working 【发布时间】:2016-01-11 12:22:16 【问题描述】:我有一个 PhoneGap 应用程序,它从我的服务器中获取数据,并且我已经设置了一切以使用跨域资源。
它在 android 4.0.3 上可以正常运行,然后我在 Android 4.4.2 上进行了测试,但它不起作用!我收到的 ajax 调用
发生错误: 0 SecurityError: 未能对“XMLHttpRequest”执行“打开”:拒绝连接到“domain.com”,因为它违反了文档的内容安全策略。
我的 config.xml 文件包含以下内容:
<plugin name="cordova-plugin-whitelist" version="1"/>
<access origin="http://domain.com/app-filelanding/*" />
<allow-intent href="http://*/*"/>
<allow-intent href="https://*/*"/>
<allow-intent href="tel:*"/>
<allow-intent href="sms:*"/>
<allow-intent href="mailto:*"/>
<allow-intent href="geo:*"/>
我的 index.html
上有这个元标记<meta http-equiv="Content-Security-Policy"
content="default-src 'self' http://www.domain.com 'unsafe-inline' data: gap: https://ssl.gstatic.com;
media-src *;
connect-src 'http://www.domain.com/'">
这在我的脚本上:
$(document).on("mobileinit", function()
$.support.cors = true;
$.mobile.allowCrossDomainPages = true;
);
【问题讨论】:
您可以尝试删除“domain.com”周围的引号吗? 【参考方案1】:您似乎混合了 domain.com 和 www.domain.com - 尝试将您的内容安全策略更改为引用 domain.com 而不是 www.domain.com
【讨论】:
以上是关于Phonegap 和 Android 4.4.2 白名单不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap : iOS 和 Android 应用更新通知
在 Cordova / PhoneGap 中生成 iOS 和 Android 图标
在 android 和 IOS 中运行 phoneGap 应用程序需要进行啥配置?