我用这个代码.
var apiPath : String = "/api/list/"
let configuration = NSURLSessionConfiguration.defaultSessionConfiguration()
configuration.timeoutIntervalForRequest = 60
let manager = Alamofire.Manager(configuration: configuration)
manager.session.configuration.HTTPAdditionalHeaders = ["_token" : self._token]
manager.request(.GET,self._host + self._url + apiPath,parameters: nil)
.responseSwiftyJSON ({ (request,response,resultJson,error) in
if (resultJson["Success"]) {
//get list success
} else {
println("request : \(request)")
println("response : \(response)")
println("resultJson : \(resultJson)")
println("error : \(error)")
}
})
我遇到了一些问题
Alamofire版本1.2.1:没问题
Alamofire版本1.2.2& 1.2.3:
request : { URL: https://test.com/api/list/ }
response : nil
resultJson : null
error : Optional(Error Domain=NSURLErrorDomain Code=-999 “cancelled”
UserInfo=0x7feb92c434f0 {NSErrorFailingURLKey=https
://test.com/api/list/,NSLocalizedDescription=cancelled,
NSErrorFailingURLStringKey=http s://test.com/api/list/})
为什么响应为nil且在版本1.2.2和1.2.3上resultJson为null
请帮我解决这段代码中的问题..
在将Alamofire从1.2.1更新到1.2.3后,我刚刚遇到了与您今天相同的问题.
我通过在最后和responseJSON块内添加“manager.session.invalidateAndCancel()”来解决此问题.但是我无法理解的是,如果这一行代码中的responseJSON块会影响responseJSON结果.
无论如何,我将运行此修复,直到Alamofire团队修复它或有人向我解释为什么会发生这种情况.