1、首先导入 AFNetworking
2、在文件中引入头文件
3、写方法
+(nullable NSURLSessionDataTask*)POSTWithURL:(NSString *)urlString parameters:(id)parameters completeBlock:(completeBlock)completeBlock{
// [HUDManager showIndicator:@"加载中。。。"];
NSURLSessionDataTask*task=nil;
NSLog(@"参数:%@",parameters);
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
AFHTTPResponseSerializer *responseSerializer = [AFHTTPResponseSerializer serializer];
manager.responseSerializer = responseSerializer;
//创建你得请求url、设置请求头
// NSString *URL = [NSString stringWithFormat:@"%@%@",RequestManagerUrl,urlString];
NSString *URL = urlString;
NSMutableURLRequest * request = [[AFHTTPRequestSerializer serializer] requestWithMethod:@"post" URLString:URL parameters:parameters error:nil];
// [request setValue:[DCSpeedy CKmd5:tag] forHTTPHeaderField:@"xingli"];
[[manager dataTaskWithRequest:request uploadProgress:^(NSProgress * _Nonnull uploadProgress) {
} downloadProgress:^(NSProgress * _Nonnull downloadProgress) {
} completionHandler:^(NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error) {
if (!error) {
NSDictionary*Dic;
//判断返回的类型
if ([responseObject isKindOfClass:[NSDictionary class]]) {
Dic=responseObject;
}else if ([responseObject isKindOfClass:[NSData class]]){
NSString*result=[[NSString alloc]initWithData:responseObject encoding:NSUTF8StringEncoding];
// Dic=[self dictionaryWithJsonString:result];
Dic = [self parseJsonStringToNSDictionary:result];
}
NSLog(@"dic=%@",Dic);
// [HUDManager hiddenWithSuccess:0.5 title:Dic[@"msg"]];
if (completeBlock) {
completeBlock (Dic,nil);
}
}else{//网络出错
// [HUDManager hiddenWithError:1.0 title:@"加载失败"];
if (completeBlock) {
NSLog(@"error==%@",error.userInfo);
completeBlock(nil ,error);
}
}
}]resume];
return task;
}
4、需要json转换
+ (NSDictionary *)parseJsonStringToNSDictionary:(NSString *)jsonString
{
jsonString = [jsonString stringByReplacingOccurrencesOfString:@"\r\n" withString:@""];
jsonString = [jsonString stringByReplacingOccurrencesOfString:@"\n" withString:@""];
jsonString = [jsonString stringByReplacingOccurrencesOfString:@"\t" withString:@""];
jsonString = [jsonString stringByReplacingOccurrencesOfString:@"\\" withString:@""];
NSError *error2=nil;
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:[jsonString dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableContainers error:&error2];
//if ([dict isValid]) {
return dict;
// }
return nil;
}
网友评论