天天看点

iOS开发之AFNetWorking初次使用会报错的坑

  • 第一次用 CocoPods 安装好了 AFNetWorking 后,无论使用 Get 还是 Post,总是直接进入 failure 的 block,错误信息如下:
error=Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html"
           
  • 解决办法一:修改框架中的 AFURLResponseSerialization.m文件的223行左右,修改以后如下:
self.acceptableContentTypes = [NSSetsetWithObjects:@"application/json", @"text/json", @"text/javascript", @"text/html", @"text/plain",nil];
           
  • 解决办法二:在每次构建AFHTTPSessionManager以后,手动设置:
session.responseSerializer.acceptableContentTypes = [NSSetsetWithObjects: @"text/html", @"text/plain",nil];
           

这样修改的好处是不需要更改框架本身的东西,否则一旦更新 CocoPods 就会失效,希望给初次使用该框架的朋友提个醒。

继续阅读