OStack程序员社区-中国程序员成长平台

标题: ios - Swift iOS 9 NSURLErrorDomain 错误 -1004 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 16:28
标题: ios - Swift iOS 9 NSURLErrorDomain 错误 -1004

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

我不知道这个错误的原因......任何帮助都会很棒!



Best Answer-推荐答案


在弄了很多不同的键和值让它工作之后,我终于想出了这个让它在 iOS9.1 中运行:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>mydomain.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSTemporaryExceptionMinimumTLSVersion</key>
            <string>TLSv1.1</string>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSRequiresCertificateTransparency</key>
            <false/>
        </dict>
    </dict>
</dict>

在我添加最后一个 NSRequiresCertificateTransparency 并将其设置为 false 之后,它起作用了,所以这可能是最重要的一个。

关于ios - Swift iOS 9 NSURLErrorDomain 错误 -1004,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32936183/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4