Objective c 我应该如何处理iOS中的ASIHTTPRequest异步调用?
我正在尝试使用一个HttpRequest。我需要异步调用请求。我试图做的是,从我的应用程序调用这个方法,并能够返回BOOL值,请求是否成功。我可以在同步调用中实现这一点。怎么可能呢?不知何故,我需要向我的应用程序返回值,那个调用是否成功。我的请求调用是分开分类的,我想把逻辑和应用程序分开。这就是为什么我需要能够以某种方式返回值。谢谢你的帮助Objective c 我应该如何处理iOS中的ASIHTTPRequest异步调用?,objective-c,ios,cocoa-touch,ios5,Objective C,Ios,Cocoa Touch,Ios5,我正在尝试使用一个HttpRequest。我需要异步调用请求。我试图做的是,从我的应用程序调用这个方法,并能够返回BOOL值,请求是否成功。我可以在同步调用中实现这一点。怎么可能呢?不知何故,我需要向我的应用程序返回值,那个调用是否成功。我的请求调用是分开分类的,我想把逻辑和应用程序分开。这就是为什么我需要能够以某种方式返回值。谢谢你的帮助 - (BOOL)sendRequest { NSURL* url = [NSURL URLWithString:ServerApiURL]
- (BOOL)sendRequest
{
NSURL* url = [NSURL URLWithString:ServerApiURL];
__block ASIHTTPRequest* request = [ASIHTTPRequest requestWithURL:url];
[request setCompletionBlock:^
{
if ([request responseStatusCode] == 200)
{
//NEED SOMEHOW RETURN TRUE IF SUCESSED
}
}];
[request setFailedBlock:^
{
//NEED RETURN FALSE
}];
[request startAsynchronous];
}}
由于您正在进行异步调用,因此该方法不能立即返回值,您可以改为在完成和失败块中调用回调方法。例如,
[delegate requestFinishedWithSuccess:YES]
或发布通知