2011-02-08 63 views
9

Tôi đang gửi yêu cầu http từ iOS (iPad/iPhone) đến máy chủ công cụ ứng dụng python google của tôi bằng cách sử dụng các lớp NSURLConnectionNSURLRequest.làm cách nào để kiểm tra mã trạng thái phản hồi yêu cầu http từ iOS?

Làm cách nào để đọc trạng thái của phản hồi, tức là giá trị do công cụ ứng dụng đặt bằng cách sử dụng response.set_status(200, message="Success") chẳng hạn?

Tôi không thể tìm thấy nơi tôi có thể đọc các mã trạng thái sau khi tôi nhận được NSURLConnection'sconnectionDidFinishLoading cuộc gọi ủy quyền ở cuối ứng dụng khách.

+0

thể trùng lặp của [Lấy HttpResponse/HttpRequest mã trạng thái iPhone SDK?] (Http://stackoverflow.com/questions/917932/retrieve-httpresponse-httprequest- status-codes-iphone-sdk) –

Trả lời

15

Phương thức ủy nhiệm connection:didReceiveResponse: được gọi khi nhận được phản hồi, cung cấp cho bạn NSURLResponse để chơi cùng.

Nếu bạn đã thực hiện yêu cầu HTTP, thì nó thực sự là đối tượng NSHTTPURLResponse, có phương thức statusCode.

16

Nếu bạn đang gửi yêu cầu đồng bộ, bạn có thể nhận mã phản hồi từ 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]); 

Hy vọng điều này sẽ giúp bạn :)

+0

Điều này đã giúp tôi, cảm ơn! – Fengson

Các vấn đề liên quan