Swift 在Alamofire 3.1.2、XCode 7.1、iOS 9上,SSLHandshake失败,错误代码为-9801

Swift 在Alamofire 3.1.2、XCode 7.1、iOS 9上,SSLHandshake失败,错误代码为-9801,swift,ssl,ios9,alamofire,Swift,Ssl,Ios9,Alamofire,我对我的Swift项目进行了以下升级 iOS 9,XCode 7.1,El Captain 阿拉莫菲尔1.3->3.1.2 连接到自签名(测试)web服务时出现以下错误 错误消息 2015-11-12 21:46:13.045[72695:5258083]CFNetwork SSLHandshake失败 (-9801) 2015-11-12 21:46:13.046 [72695:5258083] NSURLSession/NSURLConnection HTTP加载失败 (kCFStreamE

我对我的Swift项目进行了以下升级

  • iOS 9,XCode 7.1,El Captain
  • 阿拉莫菲尔1.3->3.1.2
  • 连接到自签名(测试)web服务时出现以下错误

    错误消息

    2015-11-12 21:46:13.045[72695:5258083]CFNetwork SSLHandshake失败 (-9801) 2015-11-12 21:46:13.046 [72695:5258083] NSURLSession/NSURLConnection HTTP加载失败 (kCFStreamErrorDomainSSL,-9801)2015-11-12 21:46:13.051[错误] [DeviceInfo.swift:277]generateUserToken>处理时出错 generateUserToken():可选(错误域=nsurErrorDomain 代码=-1200“发生SSL错误,并且与 无法创建服务器。“UserInfo={kCFStreamErrorCodeKey=-9801, nsLocalizedRecoverysSuggestion=是否要连接到服务器 是否仍然?NSUnderlyingError=0x7ffa99a0b8c0{错误 域=KCFerrorDomainCFN网络代码=-1200“(空)” UserInfo={kCFStreamPropertySSLClientCertificateState=0, _KCFnetworkCfStreamsSrerorOriginalValue=-9801,kCFStreamErrorDomainKey=3,kCFStreamErrorCodeKey=-9801},NSLocalizedDescription=发生SSL错误,并且出现安全漏洞 无法连接到服务器

    我已经根据实现了下面的代码来禁用SSL验证

    另外,我在info.plist中添加了以下条目,但没有运气

    <dict>
        <key>NSAppTransportSecurity</key>
        <dict>
            <key>NSAllowsArbitraryLoads</key>
            <true/>
            <key>NSExceptionDomains</key>
            <dict>
                <key>myservice.com</key>
                <dict>
                    <key>NSIncludesSubdomains</key>
                    <true/>
                    <key>NSExceptionAllowsInsecureHTTPLoads</key>
                    <true/>
                    <key>NSExceptionRequiresForwardSecrecy</key>
                    <false/>
                    <key>NSExceptionMinimumTLSVersion</key>
                    <string>TLSv1.1</string>
                    <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
                    <true/>
                    <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
                    <false/>
                    <key>NSThirdPartyExceptionMinimumTLSVersion</key>
                    <string>TLSv1.1</string>
                    <key>NSRequiresCertificateTransparency</key>
                    <true/>
                </dict>
            </dict>
        </dict>
    </dict>
    
    
    NSAppTransportSecurity
    NSAllowsArbitraryLoads
    NSExceptionDomains
    myservice.com
    n包括多个域
    N异常低安全Http负载
    NSExceptionRequiresForwardSecretary
    NSExceptionMinimumTLSVersion
    TLSv1.1
    N第三方异常低安全Http负载
    N第三方例外要求转发保密
    第三方例外最小版本
    TLSv1.1
    NSRequiresCertificateTransparency
    
    是否有人使用Alamofire&iOS9成功连接自签名服务?请提供建议

    <dict>
        <key>NSAppTransportSecurity</key>
        <dict>
            <key>NSAllowsArbitraryLoads</key>
            <true/>
            <key>NSExceptionDomains</key>
            <dict>
                <key>myservice.com</key>
                <dict>
                    <key>NSIncludesSubdomains</key>
                    <true/>
                    <key>NSExceptionAllowsInsecureHTTPLoads</key>
                    <true/>
                    <key>NSExceptionRequiresForwardSecrecy</key>
                    <false/>
                    <key>NSExceptionMinimumTLSVersion</key>
                    <string>TLSv1.1</string>
                    <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
                    <true/>
                    <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
                    <false/>
                    <key>NSThirdPartyExceptionMinimumTLSVersion</key>
                    <string>TLSv1.1</string>
                    <key>NSRequiresCertificateTransparency</key>
                    <true/>
                </dict>
            </dict>
        </dict>
    </dict>