Cordova 应用签署 apk 后需要 CORS
Posted
技术标签:
【中文标题】Cordova 应用签署 apk 后需要 CORS【英文标题】:Cordova app after signing the apk need CORS 【发布时间】:2019-04-09 17:26:05 【问题描述】:我正在开发一个 cordova 应用程序并使用一些 ajax 调用。 由于 CORS,在本地(浏览器)上不起作用。但是在 apk-debug 中是可以的,我可以调用 url。
当我签署 APK 时再次出现 CORS 错误。
url是CHI脚本,也加了Access-Control-Allow-Origin "*"
我在配置中使用带有此设置的白名单插件
<access origin="*" />
<allow-navigation href="*"/>
来自 index.html 的元数据
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
当我签署 apk 时发生了什么变化?
使用不同的内容安全策略进行测试 - 没有任何效果
Ajax 在签名的应用程序、浏览器或调试 apk 中始终返回 readystate 0
100% 有效,即使使用 GET 或 POST。
【问题讨论】:
【参考方案1】:已修复!
让我们加密不受 Android 信任的 SSL 证书
看起来 Google 不喜欢便宜的东西 :)
【讨论】:
【参考方案2】:我遇到了这个问题,问题实际上出在您调用请求的 Web 服务器上。我通过在 .htaccess 文件中添加 Access-Control-Allow-Origin 标头来解决它。
尝试将以下内容添加到您的 .htaccess 文件中。
Header set Access-Control-Allow-Origin "*"
【讨论】:
我知道,但我不明白为什么调试应用程序可以工作,所以不要求 cors 和签名的 apk 不。有什么区别? 添加了这个,还是一样的。在已签名的 apk 中不起作用。在浏览器中工作 你使用的是HTTPS还是HTTP? https - 我认为它来自 Content-Security-Policy 但找不到正确的 请您编辑您的问题并添加确切的错误消息,也许还有您的 Cordova 配置文件中的相关代码?以上是关于Cordova 应用签署 apk 后需要 CORS的主要内容,如果未能解决你的问题,请参考以下文章
安装“cordova-plugin-mfp-push”后无法在设备上运行
如何使用 Google 签名密钥签署 apk 以上传到其他应用商店