iOS AFNetWorking post方法将数组作为参数上传

在最近的一个项目中后段要求直接post 一个数组位参数传给服务器,在之前的项目中,我们只是将字典作为参数传给服务器,直接将字典作为参数的情况并不多见。于是在网上查阅了一些资料发现很多人都是将数组转成json然后再去上传,但是我传过去之后,服务器告诉我参数错误 WTF!!

最后发现罪魁祸手居然是AFNetWorking框架的问题

上传的参数格式

修改方法如下

找到AFNetWorking 下的AFURLRequestSerialization.m文件然后再找到AFQueryStringPairsFromKeyAndValue方法会看到下图这句话

直接跟改为

for (id nestedValue in array) {

[mutableQueryStringComponents addObjectsFromArray:

AFQueryStringPairsFromKeyAndValue(

      [NSString stringWithFormat:@"%@[%lu]", key,(unsigned long)[array indexOfObject:nestedValue]], nestedValue)];

}

然后直接传数组就好了

不喜勿喷,觉得有用的请点个赞

你可能感兴趣的:(iOS AFNetWorking post方法将数组作为参数上传)