AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
AFNetworking 升级 3.x 后
由于公司内部接口的规则,在些某特殊请求,要求将参数转换并设置到 requst.HttpBody 中,但是升级到 AFNetworking3.X 之后,发现暴露出来的 NSURLSessionTask 完全没有 Request 可写属性,瞬间蛋疼。。
1
cielpy 2017-05-03 14:19:34 +08:00
想初始化一个 task 最终还是需要一个 NSMutableURLRequest 的,设置
NSMutableURLRequest 对象的 body 就好 https://gist.github.com/cielpy/4ef8fa19309afdcd95c87b779ee4dbd8 |
2
hellowwo 2017-05-03 14:27:52 +08:00
好好看文档:
NSError *requestError = nil; AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; NSMutableURLRequest *request = [manager.requestSerializer requestWithMethod:method URLString:[[NSURL URLWithString:urlString] absoluteString] parameters:parameters error:&requestError]; request.HTTPBody = [NSData data]; [manager.session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { }]; |