Alamofire POST 请求错误 NSURLErrorDomain Code=-999

Alamofire POST request ERROR NSURLErrorDomain Code=-999

我正在我的项目中进行登录,我正在使用 Alamofire 请求 (swift 2.0),但我总是收到无法解决的错误。

Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo=... {NSErrorFailingURLKey=..., NSLocalizedDescription=cancelled, 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 中调用该函数。

我浏览了很多关于该错误的帖子,但其中 none 给了我一个解决方案。问题是,我需要响应,一个 JSON 对象 包含用户的 ID。但是由于错误,我的 Result<User> 为零。

确保您的 baseUrl 使用 HTTPS 协议或为该域禁用 App Transport Security。

-999 线索是"cancelled."不允许您的连接。一种可能的原因是您正在尝试建立 SSL 连接,但客户端不信任 SSL 证书。

如果这是带有自签名证书的开发系统,您需要设置allowsInvalidSSLCertificate

否则,请检查 SSL 固定。默认情况下启用它,这意味着您可能需要预加载要信任的服务器的证书。

问题已解决,我将错误的变量传递给 .authenticate() 它们应该与我的参数不同 (email, password)