国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

[iOS微博項目-3.3]-封裝網絡請求

2019-11-14 19:32:45
字體:
來源:轉載
供稿:網友
 
A.封裝網絡請求
1.需求
為了避免代碼冗余和對于AFN框架的多處使用導致耦合性太強,所以把網絡請求封裝成自己的工具類,以后便于更換網絡框架。
 
2.思路
創建一個自定義工具類,提供類方法來實現網絡請求
 
3.實現
 1 // 2 //  HVWNetworkTool.h 3 //  HVWWeibo 4 // 5 //  Created by hellovoidworld on 15/2/9. 6 //  Copyright (c) 2015年 hellovoidworld. All rights reserved. 7 // 8  9 #import <Foundation/Foundation.h>10 11 @interface HVWNetworkTool : NSObject12 13 /** get方法發送請求 */14 + (void) get:(NSString *)url parameters:(NSDictionary *)parameters success:(void (^)(id responSEObject))success failure:(void (^)(NSError *error)) failure;15 16 /** post方法發送請求 */17 + (void) post:(NSString *)url parameters:(NSDictionary *)parameters success:(void (^)(id responseObject))success failure:(void (^)(NSError * error))failure;18 19 /** post方法發送請求(帶文件數據) */20 + (void) post:(NSString *)url parameters:(NSDictionary *) parameters filesData:(NSArray *)filesData success:(void (^)(id responseObject))success failure:(void (^)(NSError *error))failure;21 22 @end
 
 1 // 2 //  HVWNetworkTool.m 3 //  HVWWeibo 4 // 5 //  Created by hellovoidworld on 15/2/9. 6 //  Copyright (c) 2015年 hellovoidworld. All rights reserved. 7 // 8  9 #import "HVWNetworkTool.h"10 #import "AFNetworking.h"11 #import "HVWFileDataParam.h"12 13 @implementation HVWNetworkTool14 15 /** get方法發送請求 */16 + (void) get:(NSString *)url parameters:(NSDictionary *)parameters success:(void (^)(id responseObject))success failure:(void (^)(NSError *error)) failure {17     // 創建http操作管理者18     AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];19    20     // 發送請求21     [manager GET:url parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {22         if (success) {23             success(responseObject);24         }25     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {26         if (failure) {27             failure(error);28         }29     }];30 }31 32 /** post方法發送請求 */33 + (void) post:(NSString *)url parameters:(NSDictionary *)parameters success:(void (^)(id responseObject))success failure:(void (^)(NSError * error))failure {34     // 創建http操作管理者35     AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];36    37     // 發送請求38     [manager POST:url parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {39         if (success) {40             success(responseObject);41         }42     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {43         if (failure) {44             failure(error);45         }46     }];47 }48 49 50 /** post方法發送請求(帶文件數據) */51 + (void) post:(NSString *)url parameters:(NSDictionary *) parameters filesData:(NSArray *)filesData success:(void (^)(id responseObject))success failure:(void (^)(NSError *error))failure {52     // 創建http操作管理者53     AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];54    55     // 發送請求56     [manager POST:url parameters:parameters constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {57        58         // 讀取文件參數59         for (HVWFileDataParam *fileDataParam in filesData) {60             [formData appendPartWithFileData:fileDataParam.fileData name:fileDataParam.name fileName:fileDataParam.fileName mimeType:fileDataParam.mimeType];61         }62     } success:^(AFHTTPRequestOperation *operation, id responseObject) {63         if (success) {64             success(responseObject);65         }66     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {67         if (failure) {68             failure(error);69         }70     }];71 }72 73 @end

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁波市| 普格县| 松潘县| 石台县| 盖州市| 卓尼县| 丽水市| 聂荣县| 延庆县| 福建省| 华阴市| 大邑县| 额尔古纳市| 韩城市| 洞口县| 侯马市| 大化| 清丰县| 永济市| 大渡口区| 安龙县| 松桃| 会昌县| 岑溪市| 承德县| 泰来县| 鄱阳县| 吉木萨尔县| 丹江口市| 台江县| 淮滨县| 潜山县| 密山市| 昭觉县| 利津县| 乡城县| 南漳县| 扶风县| 永年县| 大同市| 易门县|