在AFNetworking 3.0中,有些事情发生了变化。基本上,没有更多的操作,而是session data tasks
。如何从NSURLSessionDataTask
获取状态代码?
这是我的阻止:
GET("users/check_email", parameters: parameters, progress: nil, success: { sessionDataTask, response in
// here I need status code of response
}) { sessionDataTask, error in
completionBlock(nil, NSError(sessionDataTask: sessionDataTask))
}
答案 0 :(得分:35)
NSURLSessionDataTask
有一个response
属性,可以转换为NSHTTPURLResponse
以获取状态代码:
Swift示例:
if let urlResponse = sessionDataTask.response as? NSHTTPURLResponse {
let status = urlResponse.statusCode
}
Objective-C示例:
NSInteger statusCode = 0;
if ([sessionDataTask.response isKindOfClass:[NSHTTPURLResponse class]]) {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)sessionDataTask.response;
statusCode = httpResponse.statusCode;
}
答案 1 :(得分:0)
NSURLSessionDataTask
具有response
属性,该属性将填充NSHTTPURLResponse
类的对象,该对象具有statusCode
属性。