之前用AFNetWorking都比较顺,今天遇到两个问题
1. 发送POST请求,服务端要求将请求参数封装成JSON, 然后转成二进制发出, 而不再是直接发送一个包含所有参数的字典
这样就会出现一个问题,在AFURLRequestSerialization.m 中AFHTTPRequestSerializer (476行, 465行) 会把传进来的参数再次用UTF8 编码, 由于之前传入参数之前转为json 时已经用UTF8编码过,此时无需再次编码
2. 传入参数发送请求后总是回调到响应失败的方法中, 查看报错日志, 得知是AFNWorking 不支持服务端返回的数据格式, 加入即可,在 AFURLResponseSerialization.m-->AFJSONResponseSerializer (223)行加入