我想创建一个nsobject,它将拥有我的所有方法,用于与我的php脚本交谈并从我的数据库中获取数据。
我想使用ASIHTTPRequest包装器来为我做这个,但是我不知道如何构造这个nsobject,因为会有几个方法调用不同的php脚本(或者具有不同功能的php)。
我在abit丢失的地方是考虑从我希望显示数据库中的数据的视图中调用nsobject方法,因为我不知道如何使用 - (void)将数据传递到视图requestFinished:(ASIHTTPRequest *)request {method。
例如,nsobject就像这样
//...
-(IBAction) method1
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];
}
-(IBAction) method2
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];
}
-(IBAction) method3
{
NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request startAsynchronous];
}
//Then catch each method request with one
- (void)requestFinished:(ASIHTTPRequest *)request{ //etc
//and use one failed request
- (void)requestFailed:(ASIHTTPRequest *)request{ //etc
或者您是否将requestFinished方法放在要显示信息的视图中?
答案 0 :(得分:1)
您应该将HTTP请求回调(requestFinished:和requestFailed :)放在UIViewController的子类中。无论视图控制器控制相关视图是什么,最有可能的情况是,除非强烈需要在视图控制器之间共享功能,在这种情况下,您可以将其分解为单个工作,其唯一的工作是处理这些网络请求。无论哪种方式,需要此数据的视图都应由其视图控制器进行修改。视图本身不应与网络代码有任何联系。