我有一个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
变量也有值,我在调试器中检查过,所以我没有发送空字符串。
答案 0 :(得分:2)
您正在设置标题,但想要的是
[request appendPostData:[@"This is my data" dataUsingEncoding:NSUTF8StringEncoding]];
或:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request addPostValue:@"Ben" forKey:@"name"];