尝试使用iOS7登录我的应用时,我收到了一些有关描述的失败回复。这是NSURLAuthenticationChallenge failureResponse的NSLog:
<NSHTTPURLResponse: 0xa383570> { URL: <URL> } { status code: 401,headers {
"Content-Length" = 1385;"Content-Type" = "text/html;charset=utf-8";
Date = "Fri, 13 Jun 2014 12:14:24 GMT";
Server = "Apache-Coyote/1.1";
"Www-Authenticate" = "Basic realm=\"booo\"";
"x-errorCode" = 02;
"x-errorDescription" = "com.idealination.core.server.client.http.ServerException:
Request failed: <URL> Status: CLIENT_ERROR_UNAUTHORIZED
Error: #Unauthorized :: Invalid userid or password.";
} }
我需要最后一行才能知道我会得到什么错误。但是当我使用iOS6和iPhone 3gs时,我只得到:
<NSHTTPURLResponse: 0x1c507ae0>
如何使用iOS7获得回复?为什么我会得到不同的回应?
答案 0 :(得分:1)
你不应该寻找最后一行,你应该寻找HTTP状态码,在这种情况下是401。
if(urlResponse.statusCode == 401) { }
如果您需要将其转换为状态代码的含义,请使用
NSString *status = [NSHTTPURLResponse localizedStringForStatusCode:urlResponse.statusCode];