后台说接收不到参数, AFN做网络请求时,如果是用DELETE做请求时,AFN规定,要将请求参数放在URL中传递。 在类 AFURLRequestSerialization中,有这样一句设置,
self.HTTPMethodsEncodingParametersInURI = [NSSet setWithObjects:@"GET", @"HEAD", @"DELETE",nil];
其中,HTTPMethodsEncodingParametersInURI 的意思很明显,就是指在URI中传递参数的方法有:GET/HEAD/DELETE。
但是,有时后台会要求将参数放在请求体中传递。所以,这时候就需要重新设置一下HTTPMethodsEncodingParametersInURI。
解决办法如下,
manager.requestSerializer.HTTPMethodsEncodingParametersInURI = [NSSet setWithObjects:@"GET", @"HEAD", nil];