how do I check an http request response status code from iOS?

梦想的初衷 提交于 2019-11-27 22:23:34

问题


I am sending an http request from iOS (iPad/iPhone) to my python google app engine server using the NSURLConnection and NSURLRequest classes.

How do I read the response's status, i.e. the value set by app engine using response.set_status(200, message="Success") for instance?

I'm not able to find where I can read these status codes once I receive the NSURLConnection's connectionDidFinishLoading delegate call on the client end.


回答1:


The connection:didReceiveResponse: delegate method is called when a response is received, which gives you an NSURLResponse to play with.

If you've made an HTTP request, then it'll actually be an NSHTTPURLResponse object, which has a statusCode method.




回答2:


If you are sending a synchronous request, you could get the response code from NSHTTPURLResponse.

NSHTTPURLResponse *response = nil;
NSError *error = nil;

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:URL_LOGIN]];
NSData *respData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSLog(@"~~~~~ Status code: %d", [response statusCode]);

Hope this will help you :)



来源:https://stackoverflow.com/questions/4938010/how-do-i-check-an-http-request-response-status-code-from-ios

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!