常见的抓包工具有哪些?

        抓包工具是我们实际工作中经常用到了!抓包工具在我们工作中主要用在:
A:抓取发送给服务器的请求,观察下它的请求时间还有发送内容等等;
B:去观察某个页面下载组件消耗时间太长,找出原因,要开发做性能调优;
C:或者我们去做断点或者是调试代码等等。

第一个Fiddler:
        Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。
        既然是代理,也就是说:客户端的所有请求都要先经过Fiddler,然后转发到相应的服务器,反之,服务器端的所有响应,也都会先经过Fiddler然后发送到客户端,基于这个原因,Fiddler支持所有可以设置http代理为127.0.0.1:8888的浏览器和应用程序。使用了Fiddler之后,web客户端和服务器的请求如下所示:

fiddler工作机制

特点:1.Fiddler是一个独立的应用,可以调试PC、Mac或Linux系统和移动设备的之间的通信,支持大部分框架如java、.net、java、Ruby,需要设置代理。
           2.能够暂停Http通讯,并且允许修改请求和响应方便进行安全测试,也可以设置检查点做功能测试
           3.通过暴露HTTP头,用户可以看见哪些页面被允许在客户端或者是代理端进行缓存。如果要是一个响应没有包含Cache-Control头,那么他就不会被缓存在客户端。
           4.可以通过Composer进行接口测试
第二个Firebug:
        1、Firebug是firefox下的一个扩展,它除了能进行网络分析还能够调试所有网站语言,如js、Html、Css等,支持各种浏览器如IE、Firefox、Opera,、Safari。
        2. Firebug是开源工具,能够将页面中的CSS、javascript以及网页中引用的图片载入所消耗的时间以矩状图呈现出来,方便我们对网页进行调优。
        3.Firebug编辑、删改任何网站的CSS、HTMLDOM以及JavaScript代码,可以通过小箭头定位页面元素。
第三个Charles:
        Charles是mac os和windows下的另外一个抓包软件(均收费,可破解),功能与fiddler类似,优点是可以自定义上下行网速、External Proxy、反向代理配置简单、可解析AMF协议数据……
        Charles和Firebug有很多相同之处。但是也有很多不同之处:
1.接口数据呈现方式对比:
(1) Charles树状结构呈现于屏幕,清晰易区分

(2)Fiddler默认按时间倒叙呈现所有接口数据,不易区分
        个人觉得图形界面上Charles更易使用,当然可以通过过滤抓取的接口数据,这样Fiddler下也就很容易区分你要找的接口了。
2.针对项目App抓取的接口数据全面性对比:
(1)Charles对于https无法直接获取到,可获取的呈现出来也都是乱码,需要安装ssl证书,后面会写具体设置方法。
(2)Fiddler可以直接抓取所有接口数据,无需设置。
        在同时使用FiddlerCharles抓取项目app的数据时发现:
Charles是获取到的数据没有Fiddler全面,想要的数据几乎都没抓到比对后发现Charles没有抓取到的数据刚好在Fiddler下全部都是https协议的,对于这部分https协议Charles几乎都获取不到,能够获取到的也都是乱码状态,问题找到啦!
    解决方案:https://blog.csdn.net/baidu_32542573/article/details/83624472
                      https://blog.csdn.net/u011032846/article/details/50350752
第四个httpwatch:
        1.   httpwatch与IE和firefox浏览器集成,但不支持chrome;httpwatch界面清晰直观,发送请求后可以快速简单的查看Cookies, Headers, Query Strings and POST data,能够通过页面分组处理多页面场景。
        2.   实时分级时间展示图能够展示一个http/https请求的处理过程;通过不同的颜色展示网络请求计时,如DNS查询,tcp连接;以瀑布形式展示浏览器事件,例如从浏览器渲染和页面加载计时就开始了,可以自动检查性能问题。
        3.   安装简单,不需要设置代理和证书;提供接口API可以被大部分编程语言自动化调用、录制、保存结果。
        4.   但只能看不能修改。
第五个科来网络分析系统:
        1.科来网络分析系统是一款专业的通过抓取网络数据包进行网络检测,网络协议分析工具,可实时监测网络传输数据,全面透视整个网络的动态信息。除了能实时检测每台电脑的上网情况,邮件收发情况,网络登录情况,网络流量外,还具有强大的数据包解码分析功能,可诊断网络故障,定位网络瓶颈,检测网络安全隐患,支持多种协议。
        2.一般用于抓取其他协议包
本文参考:http://www.51testing.com/html/53/462853-3717382.html

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,695评论 1 45
  • 简介 Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。...
    薪火_阅读 100,975评论 10 59
  • 前文介绍的都是爬取web网页的内容,随着移动互联网的发展,有很多企业并没有提web网页端的服务,而是开发了app来...
    逆向与爬虫的故事阅读 6,820评论 2 34
  • 一、charles的使用 1.1 charles的说明 Charles其实是一款代理服务器,通过过将自己设置成系统...
    朝畫夕拾阅读 1,093评论 0 0
  • 昨天继续让石头完成了3+n的计算,算完最后一道题,他就哭了,他觉得自己很笨,想让我给他报一个学算术的班。我抱着他安...
    囫囵教子阅读 538评论 0 0