前几天发现iOS9、xcode7之后NSURLConnection的API被弃用了,取而代之的是NSURLSession,看到这我首先想到了AFNetworking,因为工程的所有网络请求都是基于AF又封装的。所以立马去Cocoapods里边搜索AFNetworking,结果发现现在都3.0.4版本了,下边是最新的AFNetworking GET请求的写法:
AFHTTPSessionManager *sessionManager = [AFHTTPSessionManager manager];
[sessionManager GET:kFirstPageList parameters:nil progress:^(NSProgress * _Nonnull dow
nloadProgress) { NSLog(@"%lld", downloadProgress.totalUnitCount);
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
NSLog(@"%@", responseObject);
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
NSLog(@"%@",error);
}];
post请求
// 请求管理者 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.responseSerializer = [AFHTTPResponseSerializer serializer]; // 拼接请求参数 NSMutableDictionary *params = [NSMutableDictionary dictionary]; params[@"client_id"] = @"2331570398"; params[@"client_secret"] = @"240608336b729e27685af0ec496c1a60"; params[@"grant_type"] = @"authorization_code"; params[@"redirect_uri"] = @"http://"; params[@"code"] = code; [manager POST:@"https://api.weibo.com/oauth2/access_token" parameters:params progress:^(NSProgress * _Nonnull uploadProgress) { } success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) { NSLog(@"请求成功:%@", responseObject); NSDictionary *JSON = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil]; NSLog(@"请求成功JSON:%@", JSON); } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) { NSLog(@"请求失败:%@", error.description); }];