有时候用AFNetworking发送数据的时候会产生这种错误:
Request failed: unacceptable content-type: text/html
这是因为text/html这个方式AF中没有。。这种时候有两种方式解决
1.直接修改AF的文件:
AFURLResponseSerialization.m文件中大约226行处,将
self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", nil];
修改为:
self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", @"text/html",nil];
此时便可以正常发送消息了。
不过不是很建议直接修改,比如你要封装sdk总不能直接把别人写的第三方封进来吧,一方面别人集成容易产生冲突,第二你的sdk体积会大很多。这时候可以采用第二种方式
2.在你发送的时候每次都添加
manager.requestSerializer = [AFHTTPRequestSerializer serializer];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html",@"text/plain", nil];
即可。