Cocoa NSMutableUrlRequestSetHttpBody不';行不通
我想向服务器发出HTTP请求并获取一些数据。Cocoa NSMutableUrlRequestSetHttpBody不';行不通,cocoa,nsurlrequest,Cocoa,Nsurlrequest,我想向服务器发出HTTP请求并获取一些数据。 这是我的密码: NSString *post = @"mode=1"; NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding]; NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]]; NSURL *url = [NSURL URLWithString:[@"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
直接放在url中,它就会工作。你能告诉我哪里错了吗?如果你需要进一步解释,请告诉我 如果我会给它的网址工作
那是GET,不是POST请求。因此,使用GET或让您的服务器处理POST。服务器是否支持
POST
请求?我想是的。这是一个xampp安装(apache+php),使用另一种方法测试它。你是什么意思?顺便说一句,这就是服务器:它返回url参数mode=1i的数据,我制作了一个html表单并使用action=“post”。它工作得很好(我打印了$_帖子)代码>我收到此错误::error Domain=kCFErrorDomainCFNetwork code=303“操作无法完成。(kCFErrorDomainCFNetwork error 303。)”UserInfo=0x7174e90{nserrorfailingurkey=,nserrorfailingurstringkey=}