ios 开发工具Charles

简介

Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。

Charles主要的功能包括:

  1. 支持SSL代理。可以截取分析SSL的请求。
  2. 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。
  3. 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。
  4. 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。
  5. 支持重发网络请求,方便后端调试。
  6. 支持修改网络请求参数。
  7. 支持网络请求的截获并动态修改。
  8. 检查HTML,CSS和RSS内容是否符合W3C标准。

第一、HTTP抓包

1、打开Charles程序

2、查看Mac电脑的IP地址,系统偏好设置->网络就可以查看到了,比如我的ip地址是:19.9.28.166

3、打开iOS设置,进入当前wifi连接(Mac在一个局域网内),设置HTTP代理Group,将服务器填为上一步中获得的IP,即19.9.28.166,端口填8888:


4、iOS设备打开你要抓包的app进行网络操作

5、Charles弹出确认框,点击Allow按钮即可

信息查询

如下,可以轻松查到当前请求的所有http的信息(加密要麻烦点),如http请求头中cookies 以及请求头按照后端要求加上的信息是否正确加上,如x-device,请求时post的parameter是否是按照标准的json格式等


与后台“撕逼”专用:看看后台的content-type是否传错,后台的回调数据是否严格按照json格式等


文/x丶D(简书作者)
原文链接:http://www.jianshu.com/p/2dc5ae8ba46a
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

你可能感兴趣的:(ios 开发工具Charles)