由于项目要用到,因而折腾了下,如今把本身作的笔记发出来,有兴趣的能够看看,避免你们走弯路
更多技术文章请访问: http://www.dahuizhi.com
Charles上的设置
要截取iPhone上的网络请求,咱们首先须要将Charles的代理功能打开。在Charles的菜单栏上选择“Proxy”->“Proxy Settings”,填入代理端口8888,而且勾上”Enable transparent HTTP proxying” 就完成了在Charles上的设置。以下图所示:
iPhone上的设置
首先咱们须要获取Charles运行所在电脑的IP地址,打开Terminal,输入ifconfig en0, 便可得到该电脑的IP,以下图所示:
在iPhone的 “设置”->“无线局域网“中,能够看到当前链接的wifi名,经过点击右边的详情键,能够看到当前链接上的wifi的详细信息,包括IP地址,子网掩码等信息。在其最底部有“HTTP代理”一项,咱们将其切换成手动,而后填上Charles运行所在的电脑的IP,以及端口号8888,以下图所示:
设置好以后,咱们打开iPhone上的任意须要网络通信的程序,就能够看到Charles弹出iPhone请求链接的确认菜单(以下图所示),点击“Allow”便可完成设置。
软件使用:
切换视图显示
enter image description here
上图中的7个位置是最经常使用的几个功能。
1 那个垃圾桶图标,功能是clear,清理掉全部请求显示信息。
2 那个望远镜图标,功能是搜索关键字,也可使用ctrl+f实现,能够设置搜索的范围。
3 圆圈中间红点的图标,功能是领抓去的数据显示或者不显示的设置。 这个本人认为是charles工具很方便的一个两点,通常都使其为不显示抓去状态,只有当本身测试的时候的先后,在令其为抓取并显示状态。这样能够快准狠的获取到相关本身想要的信息,而没必要在一堆数据请求中去寻找。
4 编辑修改功能,能够编辑修改任意请求信息,修改完毕后点击Execute就能够发送一个修改后的请求数据包。
5 抓取的数据包的请求地址的url信息显示。
6 抓取的数据包的请求内容的信息显示。
post请求能够显示form形式,直观明了。
7 返回数据内容信息的显示。

其中五、六、7中都有各类形式的数据显示形式,其中raw是原始数据包的状态。 解决中文乱码 Response中文乱码:在Info.plist 中 的vmoption 添加-Dfile.encoding=UTF-8 info.plist路径 程序->Charles.app->显示包内容->Info.plist