【问题标题】:Cordova app after signing the apk need CORSCordova 应用签署 apk 后需要 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。

【问题讨论】:

    标签: javascript ajax cordova cors


    【解决方案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 配置文件中的相关代码?
      猜你喜欢
      • 1970-01-01
      • 2015-01-13
      • 2015-05-22
      • 1970-01-01
      • 2020-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-16
      相关资源
      最近更新 更多