post请求
.h里面声明方法
+ (void)postRequestWithUrl:(NSString *)urlString params:(NSDictionary *)params completion:(void(^)(id result))completionBlock failure:(void(^)(void))failureBlock;
.m里面实现方法
// post请求
+ (void)postRequestWithUrl:(NSString *)urlString params:(NSDictionary *)params completion:(void (^)(id))completionBlock failure:(void (^)(void))failureBlock
{
// 1、创建请求管理者
AFHTTPSessionManager *manager = [AFHTTPSessionManagermanager];
// 2、数据反序列化(因为在进行请求服务器之前会对参数进行一次参数序列化)
manager.responseSerializer = [AFHTTPResponseSerializerserializer];
// 3、开始请求
[manager POST:urlString parameters:params progress:^(NSProgress *_Nonnull uploadProgress) {
// 上传进度
NSLog(@"uploadProgress%@", uploadProgress);
} success:^(NSURLSessionDataTask *_Nonnull task, id _Nullable responseObject) {
//解析数据
NSDictionary *obj = [NSJSONSerializationJSONObjectWithData:responseObject options:NSJSONReadingMutableContainerserror:nil];
completionBlock(obj);
} failure:^(NSURLSessionDataTask *_Nullable task, NSError *_Nonnull error) {
NSLog(@"网络连接失败");
NSLog(@"%@", task.response.URL);
}];
}