缓存网络请求的结果

显然在某些情况下我们很希望减少移动设备和网络的交互次数,这就需要使用iOS的内存缓存了。代码基本上没有什么需要解释的地方,注意不要乱缓存,注意根据需要清理缓存即可。

 1     //构建请求
 2     NSURL *url = [NSURL URLWithString:@"http://218.241.17.106/webService/configService.asmx/GetNewCarInfo?CarID=1"];
 3     NSURLCache *urlCache = [NSURLCache sharedURLCache];
 4     [urlCache setMemoryCapacity:1*1024*1024];
 5     NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:15.0f];
 6     
 7     //如果有缓存,则从缓存中读取数据
 8     NSCachedURLResponse *response = [urlCache cachedResponseForRequest:request];
 9     if (response != nil){
10         [request setCachePolicy:NSURLRequestReturnCacheDataDontLoad];
11     }
12     
13     //发送请求
14     [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
15         NSString *responseStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
16         NSLog(@"%@", responseStr);
17     }];

代码基本没有什么需要解释的地方

转载于:https://www.cnblogs.com/Steak/p/3840063.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值