ios-网络-ASIHTTPRequest并且设置缓存

1.同步请求
ASIHTTPRequest*request=  [ASIHTTPRequest requestWithURL:url];
    [request setRequestMethod:@"GET"];
    [request setTimeOutSeconds:50];
    [request startSynchronous];
    NSError *error=request.error;
    if (error==nil) {
       NSData *data= request.responseData;
       UIImage*image= [UIImage imageWithData:data];
        self.image=image;
        
    }else{
        NSLog(@"请求出错");
    }
    
2.异步请求
-(void)setImageURL:(NSURL *)url{
  ASIHTTPRequest*request=  [ASIHTTPRequest requestWithURL:url];

    [request setRequestMethod:@"GET"];
    [request setTimeOutSeconds:50];
    request.delegate=self;//这个是与同步请求不一样的地方
    [request startAsynchronous];
}
- (void)requestFinished:(ASIHTTPRequest *)request{
    NSData*imagedata= request.responseData;
   UIImage *image= [UIImage imageWithData:imagedata];
       self.image=image;  //监听还是主线程,所以不用跳
}
- (void)requestFailed:(ASIHTTPRequest *)request{
    NSLog(@"%@失败",request.error);
}
-(void)setImageURL:(NSURL *)url{
  ASIHTTPRequest*request=  [ASIHTTPRequest requestWithURL:url];

    [request setRequestMethod:@"GET"];
    [request setTimeOutSeconds:50];
    [request setCompletionBlock:^{
    NSData*imagedata= request.responseData;
    UIImage *image= [UIImage imageWithData:imagedata];
    self.image=image;
    }];
    [request startAsynchronous];
}
这个异步请求就没有设置代理,其代理方法用一个block代替了,每个代理方法都对应一个block
 CFNetwork  SystemConfiguration MobileCoreServices libz libxml2,用这个框架需要依赖这5个库
最好用代理,不用block,虽然block是我的最爱,好像block会被重复相互抢引用而释放不了

 

 ASIDownloadCache *cache=[[ASIDownloadCache alloc]init];//创建一个缓存对象
    NSString * storecache=[NSHomeDirectory() stringByAppendingString:@"/Documents"];//设置沙盒下面的一个路径
    [cache setStoragePath:storecache];//设置缓存的存储路径
    [cache setDefaultCachePolicy:ASIOnlyLoadIfNotCachedCachePolicy];//设置缓存策略,只有不存在的时候才从网络上下载
    request.cacheStoragePolicy=ASICacheForSessionDurationCacheStoragePolicy;//设置这个缓存的请求策略,这个策略是绘画级别的,下次绘画会清空
    [request setDownloadCache:cache];//将这个缓存添加到这个请求

//这个缓存好像在ios8里面不能用,没效果,缓存必须用post,get不顶用

 

posted @ 2014-04-13 22:33  离子  阅读(407)  评论(0编辑  收藏  举报