我想在我的模型类中使用 ASIHTTPRequest 或 ASIFormDataRequest。如何委托或检测请求状态以及返回值。
如:
我有一个具有 IBAction DoIt:sender 的控制器。我想调用 Connector->DoIt 并在连接成功或失败时回调我的控制器。
我该如何处理?
谢谢你。
我想在我的模型类中使用 ASIHTTPRequest 或 ASIFormDataRequest。如何委托或检测请求状态以及返回值。
如:
我有一个具有 IBAction DoIt:sender 的控制器。我想调用 Connector->DoIt 并在连接成功或失败时回调我的控制器。
我该如何处理?
谢谢你。
基于回调(来自文档):
- (IBAction)grabURLInBackground:(id)sender
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];
}
- (void)requestFinished:(ASIHTTPRequest *)request
{
// Use when fetching text data
NSString *responseString = [request responseString];
// Use when fetching binary data
NSData *responseData = [request responseData];
}
- (void)requestFailed:(ASIHTTPRequest *)request
{
NSError *error = [request error];
}
基于块:
- (IBAction)grabURLInBackground:(id)sender
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
__block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setCompletionBlock:^{
// Use when fetching text data
NSString *responseString = [request responseString];
// Use when fetching binary data
NSData *responseData = [request responseData];
}];
[request setFailedBlock:^{
NSError *error = [request error];
}];
[request startAsynchronous];
}