iOS 开发者必会的几项技能,不知不用你就OUT了

iOS 开发者必会的几项技能,不知不用你就OUT了_第1张图片
timg.jpg

前言
一个多月的996生活,996并不算什么的,重点是996真的是996.几乎在这时间段里面全是不停地码代码,不过目前已经进入测试阶段,每天稍微改点小bug,空闲时间总算有了那么一丢丢。

兜兜转转写了好久,却一直没有正式的将这篇文章分享出去,说来甚是惭愧。主要是公司出现一些状态。。只可意会不可言传~~~

目录
一、Charles
1.1 Charles主要的功能
1.2 将 Charles 设置成系统代理
1.3 过滤网络请求
1.4 模拟慢速网络
1.5 修改网络请求内容
1.6 修改服务器返回内容
1.7 给服务器做压力测试
1.8 抓取手机App网络请求
1.9 无法抓取模拟器的数据(2020.01.06更新)
二、Postman
三、在线转模型工具
四、json格式化

一、Charles

Charles破解版下载地址点我

1.1 Charles主要的功能

1.截取Http、Https网络请求内容
2.支持修改网络请求参数,方便调试
3.支持网络请求的截取 并动态修改

iOS 开发者必会的几项技能,不知不用你就OUT了_第2张图片
图片.png
1.2 将 Charles 设置成系统代理

启动 Charles 后,第一次 Charles 会请求你给它设置系统代理的权限。你可以输入登录密码授予 Charles 该权限。你也可以忽略该请求,然后在需要将 Charles 设置成系统代理时,选择菜单中的 “Proxy” -> “Mac OS X Proxy” 来将 Charles 设置成系统代理。如下所示:

iOS 开发者必会的几项技能,不知不用你就OUT了_第3张图片
图片.png

其中Charles 主要提供两种查看封包的视图,分别名为 “Structure” 和 “Sequence”。
Structure 视图将网络请求按访问的域名分类。
Sequence 视图将网络请求按访问的时间排序。

iOS 开发者必会的几项技能,不知不用你就OUT了_第4张图片
图片.png
iOS 开发者必会的几项技能,不知不用你就OUT了_第5张图片
图片.png

不管使用哪种查看,自己喜欢就好。

1.3 过滤网络请求

在Filter 栏中填入需要过滤出来的关键字(可模糊搜索)


iOS 开发者必会的几项技能,不知不用你就OUT了_第6张图片
图片.png

比如:


iOS 开发者必会的几项技能,不知不用你就OUT了_第7张图片
图片.png
1.4 模拟慢速网络

在 Charles 的菜单上,选择Proxy ->Throttle Setting->Enable Throttling


iOS 开发者必会的几项技能,不知不用你就OUT了_第8张图片
图片.png

如果我们只想模拟指定网站的慢速网络,可以再勾选上图中的 “Only for selected hosts” 项即可。

1.5 修改网络请求内容

我们可以修改该请求的任何信息,包括 URL 地址、参数等,之后点击 “Execute” 即可发送该修改后的网络请求(如下图所示)。Charles 支持我们多次修改和发送该请求,这对于我们和服务器端调试接口非常方便,如下图所示:

iOS 开发者必会的几项技能,不知不用你就OUT了_第9张图片
Snip20180725_25.png
1.6 修改服务器返回内容

理由:iOS前端的开发人员独立完成测试而不用拉过来一个后端一起联调。并且各种特殊维度,或是临界的账号也不用再去辛苦找了,仅仅自己在青花瓷上改来改去就可以达到效果了。比如这个地方如果返回了nil程序会不会崩,直接改response就行了

步骤:

首先 要保证是开启请求断点是打开的
选择要修改的接口内容 ,勾选Breakpoints
打开青花瓷切换成结构页面,切换成Structure

iOS 开发者必会的几项技能,不知不用你就OUT了_第10张图片
选择要修改的接口内容 ,勾选Breakpoints.png
iOS 开发者必会的几项技能,不知不用你就OUT了_第11张图片
图片.png

点击Execute之后,修改内容

iOS 开发者必会的几项技能,不知不用你就OUT了_第12张图片
图片.png

没改之前


iOS 开发者必会的几项技能,不知不用你就OUT了_第13张图片
图片.png
iOS 开发者必会的几项技能,不知不用你就OUT了_第14张图片
图片.png

改完之后


iOS 开发者必会的几项技能,不知不用你就OUT了_第15张图片
Snip20180725_28.png
iOS 开发者必会的几项技能,不知不用你就OUT了_第16张图片
图片.png
1.7 给服务器做压力测试

接着我们就可以在弹出的对话框中,选择打压的并发线程数以及打压次数,确定之后,即可开始打压。(开发部建议使用,这是测试的活,不能端了人家的饭碗)

iOS 开发者必会的几项技能,不知不用你就OUT了_第17张图片
图片.png
iOS 开发者必会的几项技能,不知不用你就OUT了_第18张图片
Snip20180725_26.png

1.8 抓取手机App网络请求

在 Charles 的菜单栏上选择 “Proxy”->”Proxy Settings”,填入代理端口 8888
并且勾上 “Enable transparent HTTP proxying” 就完成了在 Charles 上的设置
iOS 开发者必会的几项技能,不知不用你就OUT了_第19张图片
图片.png

获取 Charles 运行所在电脑的 IP 地址,Charles 的顶部菜单的 “Help”->”Local IP Address”,即可在弹出的对话框中看到 IP 地址


iOS 开发者必会的几项技能,不知不用你就OUT了_第20张图片
图片.png

号外号外:笔者之前有写过抓取手机的接口 点我查看

1.9 无法抓取模拟器的数据 ---(2020.01.06更新)

打开模拟器提示:
Charles cannot configure your proxy settings while it is on a read-only volume. Perhaps you are running Charles from the disk image? If so, please copy Charles to the Applications folder and run it again. Otherwise please ensure that Charles is running on a volume that is read-write and try again.

终端执行

sudo chown -R root "/Applications/Charles.app/Contents/Resources"
sudo chmod -R u+s "/Applications/Charles.app/Contents/Resources"

执行第一条命令之后需要输入密码,输入之后回车键,继续执行第二条命令即可

iOS 开发者必会的几项技能,不知不用你就OUT了_第21张图片
图片.png

二、Postman

相信这个是很多开发者必备的。
Postman破解版下载地址点我

图片.png
POST参数请求格式:

表单提交 (也有少量使用表单)

iOS 开发者必会的几项技能,不知不用你就OUT了_第22张图片
表单提交方式.png

JSON提交(很多都是使用json)

iOS 开发者必会的几项技能,不知不用你就OUT了_第23张图片
JSON提交方式.png

xml提交(现在很少有这种,几乎没有)

iOS 开发者必会的几项技能,不知不用你就OUT了_第24张图片
xml提交方式.png

三、在线转模型工具 网络地址

挺好使的一款工具,不用下载,直接在线转即可。

iOS 开发者必会的几项技能,不知不用你就OUT了_第25张图片
图片.png

四、json格式化 json在线格式化

使用他的主要是什么呢?一美观,其二看数据格式方面

iOS 开发者必会的几项技能,不知不用你就OUT了_第26张图片
图片.png

你可能感兴趣的:(iOS 开发者必会的几项技能,不知不用你就OUT了)