我使用Alamofire V3與iOS 9,我做一個簡單的請求,如在解說Alamofire V3如何無效憑證
Alamofire.request(.GET, WS_URL)
.authenticate(user: user, password: password)
.validate(statusCode: 200..<300)
.responseJSON { response in
...
}
第一有效的請求後,我改變了證書無效者並且請求成功,但它會失敗。
如何使先前憑證失效?
UPDATE
我已經找到了一個可能的解決方案,但我不知道這是最好的一個。
let plainString = "\(user):\(password)
let plainData = plainString.dataUsingEncoding(NSUTF8StringEncoding)
let base64String = plainData?.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
let headers = ["Authorization": "Basic " + base64String!]
Alamofire.request(.GET, urlRequest, headers: headers)
.authenticate(usingCredential: self.credential)
.responseJSON{ responseJson in
...
}
感謝
你是怎麼解決才合適? – iOS
正如我的評論寫的。有關更多解釋,請閱讀此:https://github.com/Alamofire/Alamofire#http-basic-authentication: 根據您的服務器實現,授權標頭也可能是合適的 – PGLongo