AFNetworking 3.0 Code=-1016 错误解决方案

简介: AFNetworking 3.0 Code=-1016 错误解决方案导入AFNetworking类库(请参考:iOS 9 导入类库全面详尽过程(Ruby安装->CocoaPods安装->导入类库))之后,然后小伙伴们就可以照着如下官方文档欢乐地写代码。AFHTTPSessionManager *manager = [AFHTTPSessionManage

AFNetworking 3.0 Code=-1016 错误解决方案

导入AFNetworking类库(请参考:iOS 9 导入类库全面详尽过程(Ruby安装->CocoaPods安装->导入类库))之后,然后小伙伴们就可以照着如下官方文档欢乐地写代码。

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
[manager GET:@"http://blog.csdn.net/sps900608" parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) {
    NSLog(@"Success: %@", responseObject);
} failure:^(NSURLSessionTask *operation, NSError *error) {
    NSLog(@"Error: %@", error);
}];

或是用Swift:

let sessionManager = AFHTTPSessionManager()
sessionManager.GET("http://blog.csdn.net/sps900608", parameters: nil, progress: nil, success: { (task, responseObject) in
            NSLog("Success:\(responseObject)");
            }) { (task, error) in
            NSLog("Error:\(error)")
        }

结果就妥妥地报错了

Error:Error Domain=com.alamofire.error.serialization.response Code=-1016 "Request failed: unacceptable content-type: text/html" UserInfo={com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x7fc723e290c0> { URL: http://m.blog.csdn.net/blog/index?username=sps900608 } { status code: 200, headers {
    "Cache-Control" = private;
    Connection = "keep-alive";
    "Content-Encoding" = gzip;
    "Content-Type" = "text/html; charset=utf-8";
    Date = "Fri, 20 May 2016 09:01:39 GMT";
    "Keep-Alive" = "timeout=20";
    Server = openresty;
    "Transfer-Encoding" = Identity;
    Vary = "Accept-Encoding";
    "X-AspNetMvc-Version" = "3.0";
    "X-Powered-By" = "PHP 5.4.28";
} }, NSErrorFailingURLKey=http://m.blog.csdn.net/blog/index?username=sps900608

搜索 “Request failed: unacceptable content-type: text/html” 的解决方案,会有很多人告诉你去修改AFURLResponseSerialization类中的

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

改为:

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

或者在AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];之后加一行这样的代码:

manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/html", nil];

接下来又有可能报另一个错误

Error:Error Domain=NSCocoaErrorDomain Code=3840 "JSON text did not start with array or object and option to allow fragments not set." UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.}

为了从根本上解决 Code=-1016 错误,并避免 Code=3840 错误,其实只需要一行代码就能搞定:

sessionManager.responseSerializer = [AFHTTPResponseSerializer serializer]

Swift:

sessionManager.responseSerializer = AFHTTPResponseSerializer()

示例代码:

import UIKit
import AFNetworking

class ViewController: UIViewController {

    @IBOutlet var webView: UIWebView!

    override func viewDidLoad() {
        super.viewDidLoad()

        let sessionManager = AFHTTPSessionManager()
        sessionManager.responseSerializer = AFHTTPResponseSerializer()
        sessionManager.GET("http://blog.csdn.net/sps900608", parameters: nil, progress: nil, success: { (task, responseObject) in
            let data = responseObject as! NSData
            self.webView.loadData(data, MIMEType: "text/html", textEncodingName: "utf-8", baseURL: NSURL())
            }) { (task, error) in
                NSLog("Error:\(error)")
        }

        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

运行效果:
这里写图片描述

目录
相关文章
|
人工智能 监控 测试技术
利用AI辅助工具提升软件测试效率
【2月更文挑战第17天】 随着科技的不断发展,人工智能(AI)在各个领域的应用越来越广泛。在软件测试领域,AI技术也发挥着重要作用。本文将探讨如何利用AI辅助工具提升软件测试效率,包括自动化测试、智能缺陷识别和预测等方面。通过引入AI技术,软件测试过程将变得更加高效、准确和可靠。
1211 1
|
测试技术 Python Shell
Python Locust对指定网站“一键压测”
[本文出自天外归云的博客园] 前篇 前篇:Python Locust性能测试框架实践 本篇 承上——归纳过程 在前篇的基础上,我们可以利用Locust性能测试框架编写python脚本对指定网站或者接口进行压测,对于Locust的使用我们可以归纳为三步: 1. 编写python压力测试脚本; 2. 在命令行中启动Locust服务并指定压测脚本与hosts等信息; 3. 访问Locust本地网址设定并发量并进行压测。
2057 0
|
XML 应用服务中间件 数据库
图解WildFly8.x配置JNDI数据源
最近公司一直在推广使用JBoss,以前用的要么是Tomcat,要么是IBM的WAS,这里记录一下自己的转型过程,首先是安装Eclipse插件,具体步骤如下,如果是代理上网的,要在Eclipse里设置代理。
1314 0
|
9天前
|
人工智能 JSON API
全网刷屏的 Jev 模型正式开放!一手实战测评 + 保姆级教程
全网爆火的 Jev 模型是什么?有什么用?怎么使用?怎么接入 AI 编程工具?效果真的好么?傻子可懂的 Jev 保姆级实战教程 + 项目实战测评来啦
7684 13
|
7天前
|
人工智能 测试技术 API
最近全网爆火的 Jev 到底是什么?适合干什么、怎么用,一篇讲透!
Jev是TypeSafe AI推出的“系统一模型”,不生成文本,专做毫秒级结构化决策:Choice(多选)、Score(打分)、Noul(是非概率)。响应快193倍、成本低444倍,适合工单路由、内容审核、测试定级等高频判断场景。
1642 4
最近全网爆火的 Jev 到底是什么?适合干什么、怎么用,一篇讲透!
|
4天前
|
人工智能 JavaScript 芯片
DeepSeek 官方偷偷上传 Harness 桌面端安装包,我已经用上了。。附最新下载地址
DeepSeek Harness 官方的桌面端安装包被网友扒出来了,2 分钟讲明白如何使用,体验如何,适合作为 AI 编程工具么?附最新 Windows 和 Mac 双端的下载地址
1407 1
|
8天前
|
人工智能 并行计算 PyTorch
秋叶 ComfyUI 2026 整合包 v3.2 完整部署教程:Python 3.13 + Torch 2.13 全栈升级
秋叶aaaki ComfyUI 2026年8月整合包v3.2正式发布!全面升级Python 3.13.11、PyTorch 2.13.0+cu130及ComfyUI v0.30.2,原生支持MiniMax H3、Wan 2.2、Qwen-Image-2.1等2026主流音视频/图像模型,解压即用,无需环境配置。
1187 9
|
21天前
|
人工智能 自然语言处理 安全
阿里云千问办公 QwenWork详细介绍:产品核心能力、典型场景、价格及常见问题解答
千问办公是阿里云推出的一站式AI办公平台,主打"不止于对话,更注重交付",依托通义千问旗舰大模型,用户一句话即可完成数据分析、PPT生成、视频剪辑等复杂任务,直接输出可用成果。产品深度打通钉钉生态与企业OA,覆盖桌面端、网页端,提供企业标准版198元/人/月等多档订阅方案,新用户注册即赠2000积分,适配工程师、HR、财务等多职业办公场景,成为能动手干活的"全能AI同事"。
3670 10
|
5天前
|
编解码 缓存 PyTorch
16G 显卡能跑 Qwen-Image 2.1 吗?
9月20日,阿里Qwen开源Qwen-Image-2.1:7B DiT图像模型+8B文本编码器+VAE,单模型支持文生图与图像编辑,原生输出2K PNG(含Alpha通道),支持10张参考图。在自建Qwen-Image-Bench达60.28分(开源模型第一),GenAI Showdown文生图排名7/15。16G显存可跑1024×1024(需INT8量化+ComfyUI优化),但2K需24G以上。注意其Qwen Research License限非商业用途。
609 1

热门文章

最新文章