NSMutableURLRequest setHTTPBody不起作用

时间:2013-02-24 19:20:26

标签: cocoa nsurlrequest

我想向服务器发出HTTP请求并获取一些数据 这是我的代码:

NSString *post = @"mode=1";  
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding];  
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];  
NSURL *url = [NSURL URLWithString:[@"http://example.com" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];  
//if i will give the url http://example.com?mode=1 it works  
NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url];  
[theRequest setHTTPMethod:@"POST"];  
[theRequest setValue:postLength forHTTPHeaderField:@"Content-Length"];  
[theRequest setHTTPBody:postData];`

如果服务器采用mode = 1参数,它将进行sql查询并返回一些数据 这种方式不起作用,我认为这是关于setHTTPBody的事情 如果我将参数mode=1直接放入网址,它将起作用 你能告诉我哪里错了吗?如果您需要进一步解释,请告诉我。

1 个答案:

答案 0 :(得分:0)

  

如果我要提供网址http://example.com?mode=1,那么

那是一个GET,而不是POST请求。因此,请使用GET或让您的服务器处理POST。