// // DSBNetwork.m // FirstLink // // Created by ascii on 2016/12/6. // Copyright © 2016年 FirstLink. All rights reserved. // #import "DSBNetwork.h" #import @interface DSBNetwork () @end @implementation DSBNetwork + (AFHTTPSessionManager *)sharedManager { static AFHTTPSessionManager *_sharedManager = nil; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; configuration.timeoutIntervalForRequest = 15; _sharedManager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:configuration]; _sharedManager.requestSerializer = [AFHTTPRequestSerializer serializer]; _sharedManager.responseSerializer = [AFJSONResponseSerializer serializer]; }); return _sharedManager; } + (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(id)parameters progress:(void (^)(NSProgress *))progress success:(void (^)(NSURLSessionDataTask *, NSDictionary *))success failure:(void (^)(NSURLSessionDataTask *, NSError *))failure { NSURLSessionDataTask *task = [[self sharedManager] POST:URLString parameters:parameters progress:^(NSProgress * _Nonnull uploadProgress) { if (progress) { progress(uploadProgress); } } success:^(NSURLSessionDataTask *task, id responseObject) { if (success) { success(task, responseObject); } } failure:^(NSURLSessionDataTask *task, NSError *error) { if (failure) { failure(task, error); } }]; return task; } @end