iOS网络基础-实战进阶篇
实战进阶篇
AFNetworking
- 轻量级的iOS/macOS网络库
- 支持HTTP/HTTPS请求
- https://github.com/AFNetworking/AFNetworking/
- AFNetworking 3.x 基于NSURLSession
- AFNetworking 2.x 基于NSURLSession和NSURLConnection
- 事实上的业界标准
AFNetworking优点
- 封装了网络请求的细节
- 简单易使用
- 功能丰富
- 设计良好,便于扩展
- 持续更新维护
示例
AFNetworking基本用法
AFNetworking post请求
Request Serializer
post请求简化
SDWebImage的基本使用
sd_setImageWithURL:帮我们做的事:
- 下载图片
- 缓存图片
- 内存+磁盘
- 异步下载
- 主线程展示
设置placeholderImage
UIButton
如何只下载和缓存,不需要马上显示在界面上
缓存清理
调试工具
访问网络出现的问题
- 请求格式不对
- 服务器没有正确处理
- 网络出错
- 没有返回HTTP Body
- 数据解析的格式不对
调试需求
- 请求格式,参数,内容是否正确
- 服务器是否能够正确响应请求
- 返回数据的格式是否正确
- 网络是否顺畅
接口测试工具-postman
检测服务器能否响应请求
作用:
- 测试服务器是否正确实现了所约定的网络请求的接口
- GET/POST/PUT/DELETE
- 多种Content-Type:multipart/form-data,JSON
- 确定请求格式与内容
- 上传文件/下载文件
报文捕获工具-Charles
- 报文捕获
- 查看请求与响应的原始报文信息