有時(shí)候用AFNetworking發(fā)送數(shù)據(jù)的時(shí)候會(huì)產(chǎn)生這種錯(cuò)誤:
Request failed: unacceptable content-type: text/html
3259244-7ef2c6bad256fe3a.png.jpeg
這是因?yàn)閠ext/html這個(gè)方式AF中沒有矫膨。差凹。這種時(shí)候有兩種方式解決
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];
2.jpg
此時(shí)便可以正常發(fā)送消息了侧馅。
不過不是很建議直接修改危尿,比如你要封裝sdk總不能直接把別人寫的第三方封進(jìn)來吧,一方面別人集成容易產(chǎn)生沖突施禾,第二你的sdk體積會(huì)大很多。這時(shí)候可以采用第二種方式
2.在你發(fā)送的時(shí)候每次都添加
3.jpg
manager.requestSerializer = [AFHTTPRequestSerializer serializer];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html",@"text/plain", nil];
即可搁胆。