响应asihttprequest的问题

时间:2011-07-22 08:04:47

标签: iphone objective-c response asihttprequest

NSURL *url = [NSURL URLWithString:@"someurl"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];

[request setPostValue:year1 forKey:@"year"];
[request setPostValue:appy_level forKey:@"appy_level"];
[request setPostValue:reasons forKey:@"reasons"];
[request setPostValue:country forKey:@"country"];
[request setPostValue:city forKey:@"city"];
[request setPostValue:sex forKey:@"sex"];
[request setRequestMethod:@"POST"];
[request setValidatesSecureCertificate:NO];
[request setDelegate:self];
[request startAsynchronous];
NSLog(@"response -%@",[request responseString]);

[self dismissModalViewControllerAnimated:YES];  
}

- (void)requestFinished:(ASIHTTPRequest *)request
{
NSString *response = [request responseString];
NSLog(@"%@",response);
}

任何想法为什么这段代码返回(null)我的意思是响应为空?并且这个requestFinised:方法不工作,即使我写[requestsetDidFinishSelector:@selector(requestFinished)]; 方法也是。我现在很困惑。

2 个答案:

答案 0 :(得分:1)

你试过这个:

NSString * response = [[NSString alloc] initWithData:[request data] encoding:NSUTF8StringEncoding]; NSLog(@“%@”,响应);

答案 1 :(得分:1)

第一个NSLog无效,因为您的请求是asynchronous

您可以尝试将NSLog(@"finished");放入-requestFinished:以检查网页是否正在加载。它可能是您的服务器文件中的错误(例如,php致命错误)。