[原]Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con

转载请注明出处:http://blog.csdn.net/dengbin9009/article/details/43485617

在使用AFNetworking 2.0  的时候本来一切很顺畅,但是中途遇到几个比较坑的地方

这里分享一下爬坑经历,忘读者不能速爬坑!

在发送请求后,NSURLSessionDataTask一直报错

Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html"

经过一番网上排查,网上有人说是AF2.0本身的问题,解析格式不全,所以需要在AF的源文件AFURLResponseSerialization.m中修改代码就能解决:

修改文件223行处

self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", nil];

为:

self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];

即可!笔者试过确实可以,但是AF还在持续更新的类库,不宜随意修改,特别是在用了CocoaPods之后,如果之后更新库,此类错误又会重复出现,随后笔者发现acceptableContentTypes是一个开放的属性,既然这样,就证明acceptableContentTypes可以在外部被修改,所以可以在

初始化HttpClient单利的时候改变这一值:

- (instancetype)initWithBaseURL:(NSURL *)url {
    if (self = [super initWithBaseURL:url]) {

        self.responseSerializer = [AFJSONResponseSerializer serializer];
        self.requestSerializer.timeoutInterval = TimeoutInterval;
        self.responseSerializer.acceptableContentTypes=[NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];
        [self setHTTPHeader];  // 可在此处设置Http头信息
    }
    return self;
}
时间: 2024-10-24 01:51:22

[原]Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con的相关文章

Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable con

AFHTTPSessionManager * manager = [AFHTTPSessionManager manager]; manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json",@"text/javascript",@"text/html",nil];

Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html" 的问题原因及解决方案

Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html",此问题的原因就是使用的第三方框架AFNetworking 接口返回值类型不确定,由于服务器人员习惯于使用html文件所以将json文件也这么写了,导致没法解析 在模型类或者网络工具类中添加这句代码就能完美解决上述问题,建议不要直接修改AFNetw

Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptabl

在使用AFNetworking 2.0  的时候本来一切很顺畅,但是中途遇到几个比较坑的地方 这里分享一下爬坑经历,忘读者不能速爬坑! 在发送请求后,NSURLSessionDataTask一直报错 Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html" AFURLResponseSerializat

AFNetworking报错:(415 Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: unsupported media type (415)")

问题? 今天在与后台调接口的时候,遇到一个问题,使用AFNetworking报错,具体如下: Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: unsupported media type (415)" UserInfo={com.alamofire.serialization.response.error.response=<NSHTTPURLResponse:

com.alamofire.error.serialization.response Code=-1016

在使用AFN访问网络的时候,报错com.alamofire.error.serialization.response Code=-1016. 这个问题是由于后台PHP的问题,请联系后台开发人员,添加 header('Content-type: application/json');

AFNetworking 3.0.4 Error:&quot;Request failed: unacceptable content-type: text/html&quot;

使用AFNetWorking上传内容+参数, 1 NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:@"http://example.com/upload" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFor

AFN failed: unacceptable content-type: text/plain, com.alamofire.serialization

当用AFN进行网络请求或者上传文件时,响应的报文无法接受.解析.会报如上错误. 那是因为服务器响应格式不被AFN支持,不是AFN操蛋,而是服务器返回格式不常规. 以下是两个解决方法: 1.操蛋的解决方法 AFURLResponseSerialization.m文件 223行: self.acceptableContentTypes = [NSSetsetWithObjects:@"application/json", @"text/html",@"text

error = Error Domain=NSCocoaErrorDomain Code=3840

json解析,同样的请求,有一个请求,无反应.纠结了几天,终于解决了. error = Error Domain=NSCocoaErrorDomain Code=3840 "Unescaped control character around character 168." UserInfo={NSDebugDescription=Unescaped control character around character 168.} 报错信息如上: 这个原因,是因为服务器返回的字符串里面

AVAudioplayer时error解决 创建失败 ERror creating player: Error Domain=NSOSStatusErrorDomain Code=2003334207 &quot;(null)&quot;

AVAudioplayer 有两个初始化方法: 1.[[AVAudioPlayer alloc] initWithData:musicData error&e]; 2.[[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:&error]; 第一种是使用将音频文件的data文件初始化,但是data必须是一个完整的文件. 第二种是从url获取,但是这里的url是本地的file URL. 所以AVAudioplayer无法直接从网络