使用ASIHTTPRequest的POST请求无法访问PHP脚本

时间:2011-06-04 20:02:32

标签: php iphone objective-c asihttprequest

我有一个iPhone应用程序通过发布请求将数据发送到我的服务器:

-(void) sendDataToServer:(NSString*)myString {
NSURL *url = [NSURL URLWithString:@"http://site.com/script.php"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request addRequestHeader:@"Name" value:myString];
[request startAsynchronous];

}

但是当我尝试

$blah = $_POST['Name'];
$fp = fopen('test.txt', 'w');
fwrite($fp, $blah);
fclose($fp);

写入空白行,表示该变量不存在。 如果我将它设置为写任何旧字符串,它就会起作用,这意味着它们的请求正在通过,而不是它所携带的数据。

myString变量也有值,我在调试器中检查过,所以我没有发送空字符串。

1 个答案:

答案 0 :(得分:2)

您正在设置标题,但想要的是

[request appendPostData:[@"This is my data" dataUsingEncoding:NSUTF8StringEncoding]];

或:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request addPostValue:@"Ben" forKey:@"name"];