为啥突然写这个?
因为真的遇到API怎么都请求错误,一直报错,怎么都不对,后来各种找问题,才知道请求参数要按照客户要求的顺序传,
呵呵!!!
所以找了这个方法:
- (void)setQueryStringSerializationWithBlock:(NSString *(^)(NSURLRequest *, NSDictionary *, NSError *__autoreleasing *))block {
// 用户可以通过block自己组装请求参数
self.queryStringSerialization = block;
}
之前写代码的时候,我会直接这么写:
NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] requestWithMethod:@"POST" URLString:url parameters:requestDic error:nil];
因为客户的要求之后,我得排序呀,字典型是乱序的,想要自己排序,就得对参数下手。
所以写法改成了以下亚子:
AFHTTPRequestSerializer *serializer = [AFHTTPRequestSerializer serializer];
// 需要排序的参数的key值,因为数组是有顺序的,所以我把key值放到数组里保存,用以方便参数排序
NSArray *sortKeys = [NSArray arrayWithObjects:@"X1",@"X2",@"X3",@