Iphone 如何获得响应
我使用以下命令向web服务器发出http请求:Iphone 如何获得响应,iphone,ios,nsurlrequest,Iphone,Ios,Nsurlrequest,我使用以下命令向web服务器发出http请求: NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL: [NSURL URLWithString: @"http://server.com"]]; [request setHTTPMethod: @"POST"]; [request setHTTPBody: myRequestData]; [request setValue:@"application/x-
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL: [NSURL URLWithString: @"http://server.com"]];
[request setHTTPMethod: @"POST"];
[request setHTTPBody: myRequestData];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"];
NSData *returnData = [NSURLConnection sendSynchronousRequest: request returningResponse: nil error: nil];
但是我如何从服务器获取响应并解析它呢?非常感谢:)由于您正在将响应分配给
returnData
实例变量,请先将其转换为字符串。看看您得到了什么,解析可以使用NSXMLParser
或一些JSON库来完成,具体取决于响应格式
以下是如何将响应转换为字符串:
NSString *responseBody = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
我假设您指的是完整的NSURLRresponse,这样您就可以检查头等等。在这种情况下,您需要传入returningResponse参数,它是类型为(NSURLResponse**)的out参数。请参阅。
returnData
是您的回答。如果它是xml,那么您可以使用NSXMLParser来解析它,如果它的json使用JSONFramework。我可以以纯文本返回响应吗。示例:真/假?实际上,返回什么并不重要。我认为他指的是服务器返回的原始文本。文档没有解释NSURLResponse和结果之间的区别,也没有说明如何从NSURLResponse获取响应体。