最近做的项目中遇到这个问题,用3.0中的Session Task来获取这个问题困扰我好久,上周五找了好多资料终于解决了,着这里把问题记下:
2.0的方法,具体不多说了
operation.response.statusCode == 500
3.0正常获取的方法:
+ (AFHTTPSessionManager *)manager
{
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.requestSerializer.timeoutInterval = kTimeOutInterval;
manager.requestSerializer = [AFJSONRequestSerializer serializer]; // 上传JSON格式
// 声明获取到的数据格式
manager.responseSerializer = [AFJSONResponseSerializer serializer]; // AFN会JSON解析返回的数据
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[manager.requestSerializer setValue:TOKEN forHTTPHeaderField:@"Authorization"];
return manager;
}
//post
+ (void)httpPostRequest:(NSString *)url Parameters:(NSDictionary *)params WithSuccess:(void (^)(id result))success failure:(void (^)(NSError *error))failure statusCode:(void (^)(NSInteger statusCode))statusCode
{
AFHTTPSessionManager *manager = [self manager];
[manager POST:url parameters: