ios - 应用程序传输安全: NSURLSession/NSURLConnection HTTP load failed

标签 ios swift ios9

我有这个代码:

func loginWithBasicAuth() -> Void {

    let usernameText = username.text
    let passwordText = password.text

    let credentialData = "\(usernameText):\(passwordText)".dataUsingEncoding(NSUTF8StringEncoding)
    let base64Credentials = credentialData?.base64EncodedStringWithOptions([])
    let headers = ["Authorization": "HTTP Basic \(base64Credentials)"]

    Alamofire.request(.GET, "https://api.domainname.com/v0.1/", headers: headers).responseString { aResponse in

        if let receivedString = aResponse.result.value {

            print(receivedString)

        } else {

            print("Login failed.")

        }
    }
}

在控制台中打印:

NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802) Login failed.

以下是info.plist文件中的配置: enter image description here

怎么了?

最佳答案

我不确定 NSThirdPartyExceptionAllowsInsecureHTTPLoads 是通过 HTTPS 连接时使用的正确 key 。您可能应该使用 NSThirdPartyExceptionMinimumTLSVersionNSThirdPartyExceptionRequiresForwardSecrecy

我强烈建议阅读App Transport Security Technote文档,特别是诊断连接问题部分。

有一个工具可以帮助您诊断您的域:

/usr/bin/nscurl --ats-diagnostics [--verbose] URL

关于ios - 应用程序传输安全: NSURLSession/NSURLConnection HTTP load failed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33238037/

相关文章:

ios - 模拟器不可用 appcelerator studio

swift - Xcode 6 中圆角矩形的问题

ios - 如何知道详细表格 View 的原始单元格索引?

ios - NavigationBar 后退按钮行为异常且无法正常工作

ios - 参数类型 'SecretSpec' 不符合预期类型 'Sequence'

arrays - Swift Array.contains() 不调用 PFUser 子类的 Equatable 函数

ios - BLE iOS9 的 Swift 后台模式

ios - 限制地点自动完成的结果 - GOOGLE API AUTO COMPLETE

objective-c - 在 Objective-C 中执行 swift 代码

iphone - 如何通过 phonegap 使用 iPhone MFMailComposer?