问题:
使用http post 时 设置 body 的参数 不能被server 解析。
解决:
需要将HTTPMethodsEncodingParametersInURI 包含POST方法,一般的服务器不推荐使用put和delete。
如:
requestManager.requestSerializer.HTTPMethodsEncodingParametersInURI = [NSSet setWithArray:@[@"POST", @"GET", @"HEAD"]];
原因:
在使用AFNetWork时, 其源码,在requestBySerializingRequest中会直接跳过
if ([self.HTTPMethodsEncodingParametersInURI containsObject:[[request HTTPMethod] uppercaseString]]) {
return [super requestBySerializingRequest:request withParameters:parameters error:error];
}
通过抓包:
其实 查询参数,被加到了url 中,所以,需要 通过
requestManager.requestSerializer.HTTPMethodsEncodingParametersInURI = [NSSet setWithArray:@[@"POST", @"GET", @"HEAD"]];
告之,将body中的参数加到url中。