AFNetWorking and SDUrlCache 缓存http请求

本文介绍了如何使用AFNetworking库和SDURLCache类进行HTTP请求,并结合缓存机制优化数据获取效率。通过设置内存和磁盘缓存容量,实现了从服务端获取数据和从本地缓存中读取数据的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     SDURLCache *urlCache = [[SDURLCache alloc]
     initWithMemoryCapacity:1024*1024*2   // 2MB mem cache
     diskCapacity:1024*1024*15 // 15MB disk cache
     diskPath:[SDURLCache defaultCachePath]];
     [urlCache setMinCacheInterval:1];
     [NSURLCache setSharedURLCache:urlCache];
     
     NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.baidu.com"]];
     AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
     [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
     NSLog(@"从服务端获取数据:%@",operation.responseString);
     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
     if ([urlCache isCached:[NSURL URLWithString:@"http://www.baidu.com"]]) {
     
     }
     NSCachedURLResponse *resp = [urlCache cachedResponseForRequest:request];
     NSString  *str = [[NSString alloc] initWithData:resp.data encoding:NSUTF8StringEncoding];
     NSLog(@"从缓存中获取数据:%@",str);
     }];
     [operation start];

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值