发送DELETE请求时报参数为空。初步怀疑为请求的参数不正确,但是确认后参数并没有问题,使用postman测试时也没有问题。应该是AFN配置的问题。
可能DELETE方式和GET或者HEAD方式使用了同样的方法,都是拼接,所以后台是接受不到数据。
AFN默认把get head delete方法的请求参数拼到了url的后面。
解决方法为重写下面这个属性,移除了@"DELETE" 。这样AFN在发送DELETE请求时把参数json序列化,这样后台能成功接收。
manager.requestSerializer.HTTPMethodsEncodingParametersInURI = [NSSetsetWithObjects:@"GET",@"HEAD",nil];
参考:againlong https://www.jianshu.com/p/9f2ded0b7e21
网友评论