【问题标题】:Content Security Policy with Apple App Test, ionic and pouchDBApple App Test、ionic 和 pouchDB 的内容安全策略
【发布时间】:2017-03-07 20:50:41
【问题描述】:

我们在 iOS、WinPho、Android 中使用 ionic 和 pouchDB (Couch DB)。 除了在 Apple App Store Test 中我们看到 api 调用的服务器日志,但没有沙发调用的服务器日志之外,所有工作都很好。 所以

    https://api.example.com connects OK
    https://couch.example.com doesn't connect

它从 iOS 10 开始。我们调整了 CSP,它起作用了。现在它又停止工作了。 这是 CSP:

<meta http-equiv="Content-Security-Policy" 
       content="default-src 'self' * blob: gap://ready file://*;
       style-src 'self' 'unsafe-inline';
       script-src 'self' 'unsafe-inline' 'unsafe-eval' *;
       media-src *"/>

我们真正不明白的是,除了 Apple 的测试实验室(在库比蒂诺)之外,为什么它在任何地方都能正常工作。 Apple Docs 指向 W3C 上的 CSP2.0(下面的链接),但不清楚这些是如何严格遵循的,例如,有人说并非所有指令都遵循“*”政策。 https://developer.apple.com/library/content/releasenotes/General/WhatsNewInSafari/Articles/Safari_10_0.html

【问题讨论】:

    标签: ios cordova ionic-framework pouchdb content-security-policy


    【解决方案1】:

    因此,事实证明这是由两段代码之间的竞争条件引起的时间问题。 Cupertino 的网络连接时间在一个只能使用Apple Network Link Conditioner 重现的窗口中。

    Javascript 承诺中的一段代码试图在输入凭据之前启动会话,然后取消另一个对话框创建的会话。

    【讨论】:

      猜你喜欢
      • 2016-04-20
      • 1970-01-01
      • 2020-11-08
      • 1970-01-01
      • 2021-07-27
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多