【文件属性】:
文件名称:ios-基于AFNetworking的封装实现缓存,上传图片.zip
文件大小:263KB
文件格式:ZIP
更新时间:2022-07-31 12:48:34
网络
缓存策略
typedef NS_ENUM(NSUInteger, YBCacheType){
YBCacheTypeReturnCacheDataThenLoad = 0,///< 有缓存就先返回缓存,同步请求数据
YBCacheTypeReloadIgnoringLocalCacheData, ///< 忽略缓存,重新请求
YBCacheTypeReturnCacheDataElseLoad,///< 有缓存就用缓存,没有缓存就重新请求(用于数据不变时)
YBCacheTypeReturnCacheDataDontLoad,///< 有缓存就用缓存,没有缓存就不发请求,当做请求出错处理(用于离线模式)
YBCacheTypeReturnCacheDataExpireThenLoad///< 有缓存就用缓存,如果过期了就重新请求 没过期就不请求
};
//get请求
- (void)test_get
{
NSString *url = @"http://www.baidu.com";
NSDictionary *params = @{@"i":@"1"};
[YBHttpTool get:url params:params success:^(NSDictionary *obj) {
//成功
} failure:^(NSError *error) {
//失败
}];
}
//get带缓存的请求
- (void)test_get_cache
{
NSString *url = @"http://www.baidu.com";
NSDictionary *params = @{@"i":@"1"};
[YBHttpTool get:url params:params cacheType:YBCacheTypeReturnCacheDataThenLoad success:^(NSDictionary *obj) {
//成功
} failure:^(NSError *error) {
//失败
}];
}
//post请求带缓存
- (void)test_post_cache
{
NSString *url = @"http://www.baidu.com";
NSDictionary *params = @{@"i":@"1"};
[YBHttpTool post:url params:params cacheType:YBCacheTypeReturnCacheDataThenLoad success:^(NSDictionary *obj) {
//成功
} failure:^(NSError *error) {
//失败
}];
}
//上传单张图片
- (void)test_upload_image
{
UIImage *image = [UIImage imageNamed:@"1"];
NSData *data = UIImageJPEGRepresentation(image, 0.5);
[YBHttpTool uploadImageWithImage:data success:^(NSDictionary *obj) {
//上传成功
} failure:^(NSError *error) {
//上传失败
}];
}