gpt4 book ai didi

ios - ATS 应用程序传输安全 : HTTP url inside Webview

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:23:07 25 4
gpt4 key购买 nike

我们有一个在 Webview 中显示 HTML 内容的应用程序。当前提供给 Webview 的内容来自非安全域。从 iOS10 开始,它应该从安全域提供服务,因此在迁移之前要清除一些疑虑。

  1. protected HTML 页面 (https) 是否也应该具有来自 protected 服务器的 CSS 和 JS 链接?因为一些 CSS 和 JS 可能来自第三方服务器。

  2. 如果 protected HTML 页面 (https) 加载到 Webview 中并且有一些不安全的链接 (http),当用户点击这些链接时,这些链接是否会加载到 Webview 中?

预先感谢您的帮助。

最佳答案

我做了一个快速测试,似乎任何需要由 UIWebView 加载以正确显示页面的引用资源都必须遵守 ATS 规则,但也要遵循您拥有的任何异常(exception)情况在项目的 Info.plist 中指定。如果我尝试在 UIWebView 中访问非 https 站点的链接,它也会给我错误。

我认为最好的办法是为 iOS 9 用户有条件地使用 SFSafariViewController。您可以继续为 iOS 7 和 iOS 8 设备使用 UIWebView,它们不严格执行 ATS。这强加了一些额外的代码,但它应该是最小的。

另外,我只是澄清了 Apple 在应用程序传输安全性方面的变化。他们宣布在 2016 年 12 月 31 日之后提交的应用程序需要应用程序传输安全。这意味着影响不是基于用户的设备操作系统,而是提交的开发人员。此外,Apple 仍然允许添加异常(exception)情况,只要您有正当理由。我们还不知道 Apple 会允许什么样的理由。最后,Apple 在他们的 WWDC session 上表示,应用程序仍然可以在没有单独理由的情况下包含 ATS 要求的前向保密部分的异常(exception)情况。不过,在 2017 年 1 月 1 日之前,我们无法确定这将如何运作。

编辑:Apple 似乎添加了一个新的异常,您可以使用它来允许UIWebviewWKWebview 实例中的非ATS 连接。它是 NSAllowsArbitraryLoadsInWebContent。这应该完全符合您的要求。以下是 ATS 的最新摘要:preparing for ATS in 2017.

关于ios - ATS 应用程序传输安全 : HTTP url inside Webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38784706/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com