所以我有这个网址导致.php
到目前为止,我设法检索除了我想要的实际XML之外的所有内容。 XML存储在名为_xml的变量中。
if($this->outMethod=="" || $this->outMethod=="POST") //Default to POST
{
$_POST["_xml"] = $_xml;
}
所以我已经将outMethod设置为POST但我不明白如何在_xml中检索值。
- (void)grabURLInBackground
{
NSLog(@"grab url in background");
NSURL *url = [NSURL URLWithString:@"xxxxxxxxxxx"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"POST" forKey:@"outMethod"];
[request setPostValue:@"1" forKey:@"Entity_ID"];
[request setDelegate:self];
[request startAsynchronous];
NSLog(@"end of grabUrlInBackgroun");
}
不要担心网址是对的我只是不想发布它。
- (void)requestFinished:(ASIHTTPRequest *)request
{
NSLog(@"A");
// Use when fetching text data
NSString *responseString = [request responseString];
// Use when fetching binary data
NSData *responseData = [request responseData];
if(responseString)
{
NSLog(@"responseData is not null");
}
NSLog(@"response string: %@", responseString);
//NSLog(@"%@", responseString);
}
我得到的是请求是好的,但responseString中没有响应。这是因为我的php不想在HTML屏幕上打印任何XML,但是它将结果存储在通过post“$ _POST [”_ xml“] = $ _xml
发送的变量_xml中我的问题是,如何找回xml变量? ASIHTTPRequest库中是否没有可用的方法?我使用的是ASIFormDataRequest类,而不是ASIHTTPRequest。
答案 0 :(得分:1)
你必须在php文件中打印变量:
if($this->outMethod=="" || $this->outMethod=="POST") //Default to POST
{
echo $_xml;
}
HTTPRequest(以及ASIFormDataRequest)对您在* .php文件中声明的任何变量不感兴趣。它只返回您实际打印的字符串。