AFNetworking的理解

使用方法

1. 新建的工程中导入AFNetworking3.0中的(AFNetworking 和UIKit+AFNetworking两个文件夹)

2. 在用到AFNetworking的地方,引入头文件: #import "AFNetworking.h"

3. 在运行完上面这个代码后会出现下面的问题

这是苹果网络安全的问题,解决方法:在项目的info.plist添加一下元素,就可以正常运行了.

4. 问题:将上述的网址用POST方法来请求,会出现的问题

会出现以下错误

我在上面设置了,返回序列的contentType 的类型,但是仍会出现错误,就是因为这个URL只能用GET请求(所以不能用post)

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

5. 问题:拆分GET请求的URL,有可能出现的问题如下:

添加了 (application/json)就成功请求数据了.

6. 问题:URL为POST请求的,就算用post请求也会有错误

错误是这样的

所以知道怎么改了吗?>>>>>添加 (text/plain) 问题完美解决啦!

可以试一下GET请求一下网址.能成功对吧!

7. Upload上传数据,这个没法测试,大致代码如下,我已经测试了

8. 其他问题 :请求数据序列化类型的设置和返回数据序列化类型的设置

/**

注意: 数据返回序列化:二进制流 ,JSON ,XML ..... 默认的类型是JSON类型的,所以平时不需要设置(AFJSONResponseSerializer  AFXMLParserResponseSerializer  AFPropertyListResponseSerializer

像下面这么设置后,返回的数据就变成二进制数据流了.

AFHTTPResponseSerializer *responseSerializer  = [AFHTTPResponseSerializer serializer];

manager.responseSerializer                             = responseSerializer;

*/

/**

注意: 请求序列化,也有几种类型 :二进制   JSON .....默认二进制类型的请求(  AFHTTPRequestSerializer  AFJSONRequestSerializer  AFPropertyListRequestSerializer)

向下面这么设置后,请求的数据就是JSON类型的

AFJSONRequestSerializer *requestSerializer    = [AFJSONRequestSerializer serializer];

manager.requestSerializer                            = requestSerializer;

*/

根据实际情况更改请求数据序列化对象 和 返回数据序列化对象

9.屏蔽垃圾信息

进入一下界面进行修改

源码地址

github地址 https://github.com/makingitbest/AFNetworking-Test.git

AFNetworking的理解的更多相关文章

  1. iOS网络请求-AFNetworking源码解析

    趁着端午节日,自己没有什么过多的安排,准备花4-5天左右,针对网络请求源码AFNetworking和YTKNetwork进行解析以及这两年多iOS实际开发经验(其实YTKNetwork也是对AFNet ...

  2. AFNetWorking 源码粗浅理解

    最近在看AFNetWorking的源码,整理出自己的一点思路.先从一个最简单的网络请求看: NSString *urlStr = [NSString stringWithFormat:@"h ...

  3. 【原】AFNetworking源码阅读(六)

    [原]AFNetworking源码阅读(六) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这一篇的想讲的,一个就是分析一下AFSecurityPolicy文件,看看AF ...

  4. 【原】AFNetworking源码阅读(五)

    [原]AFNetworking源码阅读(五) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇中提及到了Multipart Request的构建方法- [AFHTTP ...

  5. 【原】AFNetworking源码阅读(四)

    [原]AFNetworking源码阅读(四) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇还遗留了很多问题,包括AFURLSessionManagerTaskDe ...

  6. 【原】AFNetworking源码阅读(二)

    [原]AFNetworking源码阅读(二) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇中我们在iOS Example代码中提到了AFHTTPSessionMa ...

  7. 【原】AFNetworking源码阅读(一)

    [原]AFNetworking源码阅读(一) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 AFNetworking版本:3.0.4 由于我平常并没有经常使用AFNetw ...

  8. AFNetworking 3.0 源码解读 总结(干货)(上)

    养成记笔记的习惯,对于一个软件工程师来说,我觉得很重要.记得在知乎上看到过一个问题,说是人类最大的缺点是什么?我个人觉得记忆算是一个缺点.它就像时间一样,会自己消散. 前言 终于写完了 AFNetwo ...

  9. AFNetworking 3.0 源码解读(九)之 AFNetworkActivityIndicatorManager

    让我们的APP像艺术品一样优雅,开发工程师更像是一名匠人,不仅需要精湛的技艺,而且要有一颗匠心. 前言 AFNetworkActivityIndicatorManager 是对状态栏中网络激活那个小控 ...

随机推荐

  1. Atom支持Markdown和Latex

    本篇博客主要用于记录Atom编辑器同时支持markdown和latex: 1.安装 安装方法1: (Windows系统)File->Settings->Install中搜索markdown ...

  2. JMM和happens-before原则

    JMM: Java Memory Model(Java内存模型),围绕着在并发过程中如何处理可见性.原子性.有序性这三个特性而建立的模型. 可见性: JMM提供了volatile变量定义.final. ...

  3. lintcode 落单的数(位操作)

    题目1 落单的数 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 链接:http://www.lintcode.com/zh-cn/problem/single ...

  4. 用js实现放大镜的效果

    第一次发博客,还有点小激动,本人现在正在天津上大学,希望以后从事前端这一行业,学习的时间不长,写博客为了记录自己的学习过程和收获,当然也算是巩固.可能写的东西不会像大牛那样高大上,只是一些基本的内容, ...

  5. 应用程序框架实战二十九:Util Demo介绍

    上文介绍了我选择EasyUi作为前端框架的原因,并发放了最新Demo.本文将对这个Demo进行一些介绍,以方便你能够顺利运行起来. 这个Demo运行起来以后,是EasyUi的一个简单CRUD操作,数据 ...

  6. 如何用Perl对Excel的数据进行提取并分析

    巡检类工作经常会出具日报,最近在原有日报的基础上又新增了一个表的数据量统计日报,主要是针对数据库中使用较频繁,数据量又较大的31张表.该日报有两个sheet组成,第一个sheet是数据填写,第二个sh ...

  7. MySQL学习(一)MySQLWorkbench(MySQL可视化工具)下载,安装,测试连接,以及注意事项

    PS:MySQLWorkbench是MYSQL自带的可视化工具,无论使用哪个可视化工具,其实大同小异,如果想以后走的更远的话,可以考虑使用命令行操作数据库MYSQL.可视化工具让我们初学者更能理解数据 ...

  8. 使用 gpg 加密文件 - 通过 shell 或 php

    使用 gpg 加密文件 - 通过 shell 或 php 背景:客户提供私钥,并要求我方通过php把加密后的文件传输给他们. 环境 macOS Sierra 10.12.1 php 7.0.8 0.安 ...

  9. android获得ImageView图片的等级

    android获得ImageView图片的等级问题 要实现的功能如下图,点击分享能显示选中与不选中状态,然后发送是根据状态来实现具体分享功能. 在gridview中有5个子项,每个子元素都有两张图片A ...

  10. solr教程

    转载请注明出处:http://www.cnblogs.com/zhuxiaojie/p/5764680.html 本教程基于solr5.5 前言 至于为什么要用solr5.5,因为最新的6.10,没有 ...