2013-10-29 70 views
1

我使用AFNetwokingAFHTTPClient物体击中动词把REST API。 我得到的回应是:状态500的自定义状态消息沿着响应报头字段S IN状态代码字段。从响应头获取状态信息状态下的代码字段

响应报头字段: 状态代码:500请检查您面包车号码并再试一次。

基本上问题是要分析此状态消息。代码如下:

NSHTTPURLResponse *response; 
NSMutableURLRequest *request = [httpClient requestWithMethod:PUT_CALL path:requestUrl parameters:params]; 
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 

响应对象没有getter来获取此状态消息。当我试图获得所有响应头字段时,我会得到除了状态码字段之外的所有键值对,其中消息也将到达。

+0

消息为什么会在状态代码头? – Wain

+0

我不确定放置消息和代码的标准方式是什么。但是我们打的服务器是用这种方式发送消息以及状态码。但有趣的是,我们也正在使用HttpsURLConnection类对象解析它,并且此连接对象提供了获取状态消息的getter。我怎样才能得到这个iOS? – User

回答

-1

你可以在委托方法-didRecieveResponse状态代码:

- (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{ 
     NSHTTPURLResponse* httpResponse = (NSHTTPURLResponse*)response; 
     int code = [httpResponse statusCode]; 
    } 

//Get the Body of the response 
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)theData{ 
    NSLog(@"String sent from server %@",[[NSString alloc] initWithData:theData encoding:NSUTF8StringEncoding]); 

} 
+0

我可以成功获取状态码,实际的问题是获取该信息。 – User

+0

编辑我的答案,添加委托方法以获取响应正文。 –