之前传的参数有JSON格式,也有可能是form-data格式,不过PHP后台都可以接收。现在用的Java后台不能接收form-data这种格式,所以请求失败了。
这时候需要修改AFNetworking的requestSerializer
先检查是否改动过requestSerializer,如果之前设置成了AFJSONRequestSerializer,把AFJSONRequestSerializer改成了AFHTTPRequestSerializer就OK了
1 | // 如果之前有设置AFJSONRequestSerializer,下面这段也需要,一定要看清楚,很容易混淆 |
然后设置HTTPHeaderField,告知后台使用form表单格式提交参数
1 | [manager.requestSerializer setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; |
再次请求,服务端就不会返回参数找不到的错误啦。