The encapsulated data requests plus the firewheel effect, the encapsulated requests plus the firewheel
Encapsulate the effects of data requests and fire wheels into a method. You can directly call this method when using it.
+ (Void) startRequest :( NSString *) method
Baseurl :( NSString *) baseurl
Param :( NSDictionary *) params
Success :( DKSuccess) success
Failure :( DKFailure) failure
ShowProgress :( BOOL) progress {
NSAssert (params, @ "params is nil .");
NSDictionary * par ={ @ "reqData": [self dictionaryToString: params]};
If (progress ){
[SVProgressHUD showWithMaskType: SVProgressHUDMaskTypeClear];
}
AFHTTPSessionManager * manager = [AFHTTPSessionManager];
Manager. requestSerializer = [AFHTTPRequestSerializer serializer];
Manager. responseSerializer = [AFHTTPResponseSerializer serializer];
If ([method isinclutostring: Get]) {
[Manager GET: baseurl parameters: par progress: ^ (NSProgress * _ Nonnull downloadProgress ){
} Success: ^ (NSURLSessionDataTask * _ Nonnull task, id _ Nonnull responseObject ){
[SVProgressHUD dismiss];
NSAssert (responseObject, @ "responseObject is nil .");
Success (task, [self decryptData: responseObject]);
} Failure: ^ (NSURLSessionDataTask * _ Nullable task, NSError * _ Nonnull error ){
[SVProgressHUD dismiss];
Failure (task, error );
}];
} Else {
[Manager POST: baseurl parameters: par progress: ^ (NSProgress * _ Nonnull uploadProgress ){
} Success: ^ (NSURLSessionDataTask * _ Nonnull task, id _ Nonnull responseObject ){
[SVProgressHUD dismiss];
NSAssert (responseObject, @ "responseObject is nil .");
Success (task, [self decryptData: responseObject]);
} Failure: ^ (NSURLSessionDataTask * _ Nullable task, NSError * _ Nonnull error ){
[SVProgressHUD dismiss];
Failure (task, error );
}];
}
}