ASIHTTPRequest的使用(摘录)

一、创建一个同步请求
        这是最简单的用法,发送 startSynchronous 消息将在相同线程中执行请求,不管是否成功,
完成后返回控制。
查看error 属性以检测问题。
要以字符串形式得到响应,就调用responseString 方法。这个方法不适合二进制数据 - 你
应该使用responseData 得到NSData 对象, 或者如果有更大的文件,你可以设置
downloadDestinationPath 将请求下载到文件。

 代码如下:

-(IBAction)grabURL:(id)sender
{
    NSURL *url = [NSURL URLWithString:@http://www.baidu.com];
    ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
    [request startSynchronous];
    NSError *error = [request error];
    if (!error) {
    NSString *response = [request responseString];
    }
}



}
注意:一般的,你应该优先使用异步请求,如果你在主线程中使用ASIHTTPRequest 的同步
方法,程序的ui 在请求过程中将被锁定而无法响应。


二、创建一个异步请求
下面的代码做同样的事情,但请求运行于后台。

- (IBAction)grabURLInBackground:(id)sender
{
    NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
    ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
    [request setDelegate:self];
    [request startAsynchronous];
}
- (void)requestFinished:(ASIHTTPRequest *)request
{
    // 获得文本数据
    NSString *responseString = [request responseString];
    // 获得二进制数据
    NSData *responseData = [request responseData];
}
- (void)requestFailed:(ASIHTTPRequest *)request
{
    NSError *error = [request error];
}


未完,待续......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值