React Native Webview NSURLErrorDomain 1022

时间:2016-03-16 18:09:58

标签: ios react-native

我正在尝试在网络视图组件中显示自定义网址(它们不是例外域中的网址,它们是其他网站,我并不总是知道他们的域名)但似乎无法修复Apple的错误1022 :The resource could not be loaded because the App Transport Security policy requires the use of a secure connection

我的Info.plist文件包含以下内容:

  <key>NSAppTransportSecurity</key>
  <dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>akamaihd.net</key>
        <dict>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSIncludesSubdomains</key>
            <true/>
        </dict>
        <key>facebook.com</key>
        <dict>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSIncludesSubdomains</key>
            <true/>
        </dict>
        <key>fbcdn.net</key>
        <dict>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSIncludesSubdomains</key>
            <true/>
        </dict>
        <key>needl-app.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
  </dict>
</dict>

我做错了什么?

2 个答案:

答案 0 :(得分:2)

尝试使用以下代码替换域密钥:

<key>www.akamaihd.net</key>

<key>www.faceboook.com</key> 这似乎解决了我的问题。此外,对于Facebook,您可以将其删除,只要在您的网页浏览中转到https://www.facebook.com

即可

答案 1 :(得分:0)

我遇到了同样的错误。除非您明确将其添加到 iOS 9 中的NSExceptionDomains,否则您无法加载不安全的网页。

您可以考虑使用SFSafariViewController作为用例。

  

如果您的应用允许用户查看,请使用SFSafariViewController类   来自互联网上任何地方的网站。

SFSafariViewController目前不附带react-native。但您可以自己创建custom native component