網絡請求隨筆

一、網絡請求應該建一個請求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只須要添加刪除參數就好了,只須要改方法體,這個改方法體和同時改方法名方法體是徹底兩個工做量服務器

相關文章
相關標籤/搜索