【发布时间】:2015-12-04 01:58:53
【问题描述】:
我正在尝试使用 https:// URL 将页面加载到 iOS9 上的 UIWebView。加载的页面包括来自不安全服务器的 CSS 和图像。
例如加载的页面:https://www.example.com/ 其中包括样式表http://www.example.com /style.css 和图片 http://www.example.com/image.jpg
如果原始页面是通过不安全的连接(常规 http)加载的,则一切正常。一切都可以通过 HTTPS 和 HTTP 在 iOS8 上运行。
我确实在应用程序 PLIST 文件中将 NSAppTransportSecurity 设置为 NSAllowsArbitraryLoads:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
虽然通过 HTTPS 加载页面时,图像加载正常,但 CSS 文件加载不正常。似乎 UIWebView 会阻止从安全页面加载不安全的资源。
是否有任何 UIWebView 设置允许通过不安全的连接加载 CSS?
【问题讨论】:
-
如果您添加HSTS header,浏览器会自动将指向您域的所有 HTTP 链接升级为 HTTPS(但理想情况下,您也应该修复这些链接)。
-
有人对此有任何新的更新吗?现在是否可以使用 WKWebView 或新的 iOS 工具来做到这一点?
-
@illis69,我不知道。不从安全页面加载不安全资源的要求是合理的,因此可能不会更改。
标签: ios http ssl uiwebview ios9