【问题标题】:Http Request iOS 11.2 failesHttp 请求 iOS 11.2 失败
【发布时间】:2018-03-26 15:18:39
【问题描述】:

我尝试向我的服务器发出 http 请求以获取 JSON,但每次尝试时都会收到此错误消息。

2018-03-26 16:53:32.477431+0200 S_Buddy[40041:3435695] [] nw_socket_connect 连接失败(fd 8, 172.227.96.127:443 流,pid: 40041,净化 url:https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml, tls) : [64] 主机已关闭 2018-03-26 16:53:32.479737+0200 S_Buddy[40041:3435695] TIC TCP 连接失败 [1:0x60400017f5c0]: 3:64 Err(64) 2018-03-26 16:53:32.480346+0200 S_Buddy[40041:3435695] NSURLSession/NSURLConnection HTTP 加载失败(kCFStreamErrorDomainSSL,64) 2018-03-26 16:53:32.480465+0200 S_Buddy[40041:3435695] 任务 . HTTP 加载失败(错误代码:-1200 [3:64]) 2018-03-26 16:53:32.480970+0200 S_Buddy[40041:3435696] 任务 . 完成错误 - 代码:-1200 错误域=NSURLErrorDomain 代码=-1200 “发生 SSL 错误,无法与服务器建立安全连接。” UserInfo={_kCFStreamErrorCodeKey=64, NSLocalizedRecoverySuggestion=你想连接到服务器吗?, NSUnderlyingError=0x60000044cae0 {错误域=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=64, _kCFStreamErrorDomain 3, _kCFStreamErrorCodeKey=64}}, NSLocalizedDescription=发生 SSL 错误,无法与服务器建立安全连接。, NSErrorFailingURLKey=https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml?c9911b4d481e6ada019ba2d93f6cf780, NSErrorFailingURLStringKey=https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml?c9911b4d481e6ada019ba2d93f6cf780, _kCFStreamErrorDomainKey=3}

我的 info.plist 配置是:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>ecb.europa.eu</key>
        <dict>
            <key>NSIncludesSubdomains</key>
                <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
                <true/>
            <key>NSTemporaryExceptionMinimumTSLVersion</key>
                <string>TLSv1.0</string>
            <key>NSTemporaryExceptionRequiresForwardSecrecy</key>
                <false/>
        </dict>
    </dict>
</dict>

我的 iOS 目标是 10,我使用 Swift 4

【问题讨论】:

    标签: http swift4 ios11.2


    【解决方案1】:

    我从网上的类似问题中发现,他们使用了以下密钥,包括一些与您已经使用的不同的密钥:

    <key>NSExceptionAllowsInsecureHTTPLoads</key>
    <false/>
    <key>NSExceptionMinimumTLSVersion</key>
    <string>TLSv1.0</string>
    <key>NSIncludesSubdomains</key>
    <true/>
    <key>NSExceptionRequiresForwardSecrecy</key>
    <false/>
    <key>NSRequiresCertificateTransparency</key>
    <false/>                
    <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
    <false/>
    <key>NSThirdPartyExceptionMinimumTLSVersion</key>
    <string>TLSv1.0</string>
    
    <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
    <true/>
    

    我尚未在您的特定网站上对此进行测试。

    【讨论】:

      猜你喜欢
      • 2020-03-20
      • 1970-01-01
      • 2016-09-07
      • 2014-11-19
      • 1970-01-01
      • 2016-12-17
      • 1970-01-01
      • 1970-01-01
      • 2015-04-10
      相关资源
      最近更新 更多