![](/img/trans.png)
[英]Alamofire 4 FAILURE With Swift 3.0 : Error Domain=NSURLErrorDomain Code=-999 “cancelled”
[英]Alamofire POST request ERROR NSURLErrorDomain Code=-999
我正在我的项目中登录,并且正在使用Alamofire请求(swift 2.0),但总是收到无法解决的错误。
错误域= NSURLErrorDomain代码= -999“已取消” UserInfo = ... {NSErrorFailingURLKey = ...,NSLocalizedDescription =已取消,NSErrorFailingURLStringKey = ...}
这是我的代码:
func login(email: String, password: String, completionHandler: (user: User?, statusCode: Int?, error: NSError?) -> ()) {
let parameters: [String: AnyObject] = [
"email" : email,
"password" : password
]
let urlSuffix = "loginUser"
request(.POST, baseUrl + urlSuffix, parameters: parameters)
.authenticate(user: email, password: password)
.validate()
.responseObject { (request, response, userJSON: Result<User>) in
print(request?.description)
print(response)
print(userJSON.value)
completionHandler(user: userJSON.value, statusCode: response?.statusCode, error: userJSON.error)
}
}
当用户按下按钮时,我在LoginController中调用该函数。
我浏览了许多有关该错误的帖子,但没有一个给我解决方案。 问题是,我需要响应,一个JSON对象包含用户的ID。 但是由于错误,我的Result<User>
为nil。
问题已解决,我将错误的变量传递给.authenticate()
他们应该与我的参数(email, password)
确保您的baseUrl
使用HTTPS协议或对该域禁用“应用程序传输安全性”。
-999提示已“取消”。 不允许您的连接。 一个可能的原因是您试图建立SSL连接,但是客户端不信任SSL证书。
如果这是具有自签名证书的开发系统,则需要设置allowsInvalidSSLCertificate
。
否则,请检查SSL固定。 默认情况下已启用它,这意味着您可能需要预加载证书才能使服务器可信。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.