网络请求随笔

一、网络请求应该建一个请求model 根据http://www.cocoachina.com/ios/20160509/16146.html整理html

@interface YAAPIBaseRequestDataModel : NSObject
/**
*  网络请求参数
*/
@property (nonatomic, strong) NSString *apiMethodPath;              //网络请求地址
@property (nonatomic, assign) YAServiceType serviceType;            //服务器标识
@property (nonatomic, strong) NSDictionary *parameters;             //请求参数
@property (nonatomic, assign) YAAPIManagerRequestType requestType;  //网络请求方式
@property (nonatomic, copy) CompletionDataBlock responseBlock;      //请求着陆回调
// upload
// upload file
@property (nonatomic, strong) NSString *dataFilePath;
@property (nonatomic, strong) NSString *dataName;
@property (nonatomic, strong) NSString *fileName;
@property (nonatomic, strong) NSString *mimeType;
// download
// download file
// progressBlock
@property (nonatomic, copy) ProgressBlock uploadProgressBlock;
@property (nonatomic, copy) ProgressBlock downloadProgressBlock;
@end

好处:一、能够看出来RequestDataModel属性都是网络请求发起和返回的必要参数,这样作的好处真的是太大了,不知道你们有没有这样的场景:由于请求参 数的不一样作了好多方法接口暴露出去,最后调起的仍是同一个方法,并且一旦方法写的多了,最后连应该调用哪一个方法都不知道了。 ios

二、另外RequestDataModel带来的另一个好处就是高扩展性,你有没有遇到网络层须要添加删除一个参数致使调用方法修改了,而后不少地方都要修 改方法?用RequestDataModel只须要添加删除参数就好了,只须要改方法体,这个改方法体和同时改方法名方法体是彻底两个工做量服务器

相关文章
相关标签/搜索