11

我正在尝试在 UIWebView 中加载 HTTP 链接。这些链接来自我的网站,因此它们是可靠的。我搜索了互联网并在这里找到了解决方案:如何将 NSAppTransportSecurity 添加到我的 info.plist 文件中?

遵循该解决方案后,我的 info.plist 看起来像这样:

在此处输入图像描述

即使进行了更改,我也无法在 UIWebView 中加载 HTTP 链接。我收到以下错误:

App Transport Security 已阻止明文 HTTP (http://) 资源加载,因为它不安全

有什么我做错了吗?

更新:

在做出 Ramshad 在评论中建议的更改后,它仍然不起作用。见下图:

在此处输入图像描述

4

6 回答 6

17

应该这样做,你需要在你的 Plist 中添加以下记录 Apple Documentation

NSAppTransportSecurity <- 类型字典

NSAllowsArbitraryLoads <- 类型布尔值是

在此处输入图像描述

于 2015-10-01T10:34:02.187 回答
3

你可以尝试添加所有的东西,没有“http://”:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>mydomain.com</key>
        <dict>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSIncludesSubdomains</key>
            <true/>                
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
    </dict>
</dict>
于 2015-09-25T07:00:56.033 回答
2

在此处输入图像描述

试试这个,这应该可以解决你的问题

于 2015-09-21T10:11:28.123 回答
2

检查这篇文章:链接

应用传输安全 (ATS) 通常不允许我们的应用连接到 HTTP 服务器,但您可以添加一个特殊例外以允许 UIWebView 和 WKWebView 加载不安全的内容。

TL;博士

只需添加到您的.plist文件中:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoadsInWebContent</key>
    <true/>
</dict>

NSAllowsArbitraryLoadsInWebContent可从 iOS 9.0 开始使用,因此对您来说应该没问题。

于 2018-12-20T12:34:54.937 回答
0

你试过这个吗?

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>www.mydomain.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSExceptionMinimumTLSVersion</key>
            <string>TLSv1.0</string>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>
于 2015-11-19T15:31:56.007 回答
0

我认为您拼错了链接或域。

我遇到了同样的问题,在再次检查域后123.company.othercompany.com,我更改company.comothercompany.com,它开始加载外部网站。

于 2016-06-04T15:06:48.480 回答