CFNetwork内部错误:URLConnectionLoader.cpp:289

时间:2016-06-27 09:48:09

标签: ios xcode cfnetwork

一段时间后,当我打开我的应用程序时,我收到了日志:

  

440:CFNetwork内部错误(0xc01a:/BuildRoot/Library/Caches/com.apple.xbs/Sources/CFNetwork/CFNetwork-758.4.3/Loading/URLConnectionLoader.cpp:289)

过去从未出过过。 我的项目使用网络库AFNetworking和CocoaAsyncSocket。

为什么会出现以及如何解决?

2 个答案:

答案 0 :(得分:1)

我解决了我的情况,这不是AFNetwork的问题,我使用无效的SSL认证和SDWebImage,当使用选项' SDWebImageAllowInvalidSSLCertificates'在SDWebImage中获取http图像(不是https图像),您将收到此错误。 SDWebImage无法自动识别协议(http或https)。

我的解决方案: 我没有更改SDWebImage的代码,我只是为已识别的协议(http或https)编写了一个包装器。 我使用' 0' http图像的选项和' SDWebImageAllowInvalidSSLCertificates' https图像的选项(我的https认证是自签名或无效的)。如果您的cer有效,我认为SDWebImage运行良好。

答案 1 :(得分:1)

我通过在info.plist

中添加以下属性来解决此问题
<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>http://mydomain</key>
        <dict>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSIncludesSubdomains</key>
            <true/>
        </dict>
    </dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>