菜鸟教程小白 发表于 2022-12-12 16:28:51

ios - Swift iOS 9 NSURLErrorDomain 错误 -1004


                                            <p><p>我在 iOS 9 和 iOS 8 中都使用 Swift 2 和 Alamofire。在 iOS 8 中,我对 API 的所有请求都可以正常工作。在 iOS 9 中,它们立即以 -1004 NSURLErrorDomain 失败,并显示消息“无法连接到服务器。”。我阅读了 Apple 对 App Transport Security 所做的更改,并已将该条目添加到我的 Plist 以禁用它并允许不安全的连接。</p>

<p>我不知道这个错误的原因......任何帮助都会很棒!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>在弄了很多不同的键和值让它工作之后,我终于想出了这个让它在 iOS9.1 中运行:</p>

<pre><code>&lt;key&gt;NSAppTransportSecurity&lt;/key&gt;
&lt;dict&gt;
    &lt;key&gt;NSAllowsArbitraryLoads&lt;/key&gt;
    &lt;true/&gt;
    &lt;key&gt;NSExceptionDomains&lt;/key&gt;
    &lt;dict&gt;
      &lt;key&gt;mydomain.com&lt;/key&gt;
      &lt;dict&gt;
            &lt;key&gt;NSIncludesSubdomains&lt;/key&gt;
            &lt;true/&gt;
            &lt;key&gt;NSTemporaryExceptionAllowsInsecureHTTPLoads&lt;/key&gt;
            &lt;true/&gt;
            &lt;key&gt;NSTemporaryExceptionMinimumTLSVersion&lt;/key&gt;
            &lt;string&gt;TLSv1.1&lt;/string&gt;
            &lt;key&gt;NSExceptionRequiresForwardSecrecy&lt;/key&gt;
            &lt;false/&gt;
            &lt;key&gt;NSRequiresCertificateTransparency&lt;/key&gt;
            &lt;false/&gt;
      &lt;/dict&gt;
    &lt;/dict&gt;
&lt;/dict&gt;
</code></pre>

<p>在我添加最后一个 <code>NSRequiresCertificateTransparency</code> 并将其设置为 false 之后,它起作用了,所以这可能是最重要的一个。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Swift iOS 9 NSURLErrorDomain 错误 -1004,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/32936183/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/32936183/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Swift iOS 9 NSURLErrorDomain 错误 -1004