项目总结(四)--- 网络封包分析工具Charles

  Charles是Mac下一款截取网络封包的工具,主要原理就是将自己设置成为熊网络访问的代理服务器,这样的话,所有的网络请求都得通过它来完成,从而实现网络封包的拦截分析。

  这款软件功能整体来说还是非常强大的,例如支持SSL代理,流量控制(可以模拟慢速网络,比较常用),支持修改和重发网络请求(这样可以方便服务器端去调试)等等非常实用的功能。具体可去官网(http://www.charlesproxy.com)了解,下面就简单的说下常用的功能:

  在使用之前必须把这玩意设置成为系统的代理,具体方法如下:第一次启动,Charles会请求你将它设置成为系统代理,如果你手抖或者不认得英文单词点了拒绝,那么启动后你也可以通过菜单“Proxy”->"Mac OS X Proxy"来设置。

  设置好之后你再打开浏览器就可以看到很多请求,主界面如下:

  

  因为所有的网络封包都会被列出来,很多都是你不关注的,那么你可以通过上图中 Filter 输入框去筛选,也可以通过

  

  这种方式去添加你要截取的目标网站就行。

  那么怎么去拦截iPhone上的网络封包呢?

  必须进行两项设置,一个是Charles设置,按以下顺序

  

  一个是iPhone上的设置:设置-》无线局域网,选中当前连接的wifi,单击右边详情,拉倒最底部,找到HTTP代理 这块,选择手动,然后输入IP地址(在Mac的终端上输入ifcongfig en0命令可以查看,必须一致)和端口号8888,这时候再点击OK后,你会看到Charles弹出一个链接确认的请求,记得选择 “Allow”。好,到此就可以拦截你手机上发出的网络封包了。

  

  下面是模拟慢速网络功能,很简单,作如下设置就行:

  

  

  然后还有,截取SSL信息功能,只需要在对应的请求上右击,选择SSL Proxying就可以对相应的Host所有的SSL请求拦截;

  修改网络请求内容,也是右击对应的请求,然后选择edit进行编辑,完事后单击“Execute”按钮。

  当然,还有个有用的功能就是修改服务器响应的内容(可以自己模拟一下特殊数据,减轻后端哥们的压力)这个相对来说有点复杂,它提供了Map(适合长期地将某一个请求重定向到另一个网络地址-Map Remote 或者本地文件-Map Local),Rewrite(适合对网络请求进行一些正则替换),Breakpoints(适合一些临时性德修改)三个功能,都可以完成修改服务器响应内容的目的,具体使用还要根据个人需求来。

  首先是Map Remote

   

  然后是Map Local 

  然后Rewrite ,匹配什么,替换成什么,相信聪明如你,一看就懂

  

下面是Breakpoint功能

开启此功能后,对于指定的网络请求,响应后都会被断点拦截,此时你就可以通过Edit Response去修改响应内容,然后单击 Execute按钮就行,其中需要注意的是客户端响应超时哦。

时间: 2024-08-11 00:42:54

项目总结(四)--- 网络封包分析工具Charles的相关文章

iOS安全- 网络封包分析工具Charles

之前写了一篇文章: iOS开发- 以图搜图功能实现 (源码+解析) 好多朋友都比较好奇我是如何获取到百度以图搜图的API, 其实这非常简单. 利用网络封包分析工具 " Charles " 就能轻松实现. 获取以图搜图API,只有简单3步: 1. 打开Charles 2. 模拟识图,发送请求 3. 分析请求 本来想自己介绍下这个工具的,不过看到唐巧大神有一篇相关的文章,我就不班门弄斧了.这里参考他的介绍. 另外, 拉票先- 如果对你有所帮助,点击下方的投票链接,给我投上一票吧. 谢谢.

iOS开发工具-网络封包分析工具Charles

简介 本文为InfoQ中文站特供稿件,首发地址为:文章链接.如需转载,请与InfoQ中文站联系. Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析. Charles是收费软件,可以免费试用30天.试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有

iOS开发工具——网络封包分析工具Charles

简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析. Charles是收费软件,可以免费试用30天.试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有10秒种的延时. 相关厂商内容 付钱拉开发者支持计划火热启动-点燃创业梦想 可用性高达五个9

网络封包分析工具Charles使用

网址:http://www.charlesproxy.com/ 截取网络封包的工具. 简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析. Charles是收费软件,可以免费试用30天.试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有10秒

iOS开发工具-如何使用网络封包分析工具Charles,通过配置proxy对http、https、tcp、udp 等协议的请求响应过程交互信息进行分析、判断、解决我们移动开发中的遇到的各种实际问题。

通过该方式同时也可以实现底层网络库AFNetworking及ASIHTTPRequest的代理设置.达到我们开发时的抓包分析及 IP地址指定访问开发/仿真任一台提供API接口服务器的目的. 首先下载Charles并配置我们的开发机iPhone终端的代理IP及Charles配置一下, 步骤如下: 1).取得mac本机的IP地址:如下图中的:192.168.1.106 如图: 2).通过下载的Charles来配置我们的代理服务器: 如下图: 将我们的开发机iphone终端代理设置成我们mac本的ip

Charles——iOS开发工具-网络封包分析工具

简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析. Charles是收费软件,可以免费试用30天.试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有10秒种的延时. 因此,该付费方案对广大用户还是相当友好的,即使你长期不付费,也能使用完整的

IOS开发_工具使用——Charles(网络封包分析工具)

一.what Charles工具是通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析. 它能实现以下 支持SSL代理:截取分析SSL的请求. 支持流量控制:模拟慢速网络以及等待时间(latency)较长的请求. 支持AJAX调试:自动将json或xml数据格式化,方便查看. 支持AMF调试:可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看. 支持重发网络请求,方便后端调试. 支持修改网络请求参数.

网络抓包工具Charles的介绍与使用

在复杂的App开发过程中,我们会涉及各种复杂的网络操作,各种API的调用和数据接收.如果我们只是通过控制台来查看网络的输入输出,就会非常麻烦.在Mac上有一款非常优秀的网络抓包工具--Charles,在iOS开发中也是常常用到.今天我们就来介绍如何安装使用Charles.关于Charles安装包.破解包和证书我已经上传至网盘:http://pan.baidu.com/s/1numMoTr    .大家可以下载直接安装.操作步骤如下: (1)直接安装dmg文件,安装过程很简单,就不赘述了.由于Ch

五个好用的网络协议分析工具(附下载)

Network Packet Analyzer,是一种网络分析程序,可以帮助网络管理员捕获.交互式浏览网络中传输的数据包和分析数据包信息等.这里给出了5个最好的网络数据包分析工具,具体如下: 1. Wireshark 相信大家都很熟悉,就不多介绍了.Wireshark网络嗅探器是最受欢迎的免费网络嗅探器之一,它能够在Unix系统和Win系统下运行. 下载:http://www.wireshark.org/download.html 2. Microsoft Network Monitor Mic