处处用到网络抓包

“君子生非异也,善假于物也”,要做好测试很多时候光靠自己是远远不够的,还要会利用测试工具协助测试,这样才能事半功倍。

测试工具多种多样,会在本系列中一一介绍,今天着重介绍网络抓包工具。

现在的浏览器都具有抓包功能,ie或者chrome都自带的开发者工具,选择网络就能抓取该浏览器所发送的请求。如下图所示:

但这也具有局限性,只能抓取浏览的网络请求包,如果是软件的请求或者手机的请求该如何抓包呢?

介绍一款windows下常用工具----fiddler,推荐原因

  • 因为它是免费工具

  • 因为它功能强大

fidder会抓取所有的电脑上的请求包,并可以抓取指定进程程序的网络请求包,甚至可以设置代理让手机连接到电脑,抓取app的网络请求。可谓麻雀虽小五脏俱全,能解决大部分测试抓包的请求。

以下根据我们实际在测试工作中使用的概率,列举几个大家经常会用到的功能。

 如何抓取指定程序的网络:

Filter标签则可以设置Fiddler的过滤规则,来达到过滤http请求的目的。如下图所示。

  1. 勾选Use Filters,

  2. 勾选Client Process下的show onlye traffic from

  3. 选择指定的进程

 如何抓取app的网络请求包:

要抓取的前提是手机和电脑必须处于同一个网络之中,这样手机才能连接到电脑上的fiddler。

1. 在FiddlerOption中勾选Allow remote computers to connect,是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来,并将Fiddler listens on port记下(之后手机需要设置该端口)

 

2. 将鼠标移到Online上,显示出本机的ip并记下(之后手机需要设置该ip),如下图所示:

 

3.1 对于ios来说,只需要按住无线网络后面的i进入高级设置,在http代理中选择手动,然后输入电脑的ip以及之前设置的端口就可以了。

3.2 对于Android来说,在无线网络的高级设置中将代理设置为手动,同样设置ip和端口就可以。

当然这些只是fiddler功能的冰山一角,只是先介绍2种比较常用的抓包功能,需要深入研究可以从百度搜索教程,你会发现它的无所不能。

Fiddler对于windows来说十分好用,但它是没有os系统版本的,所以要在os系统中抓包需要寻找其他抓包工具,在这里推荐 Charles,基本上fiddler有的功能它全有,而且更为强大,具体教程不做介绍了,有兴趣的同学可以去下面这个链接学习一下:

http://www.cnblogs.com/yuanjunliang/articles/5167927.html

抓包工具还有很多,比如wireshark,Sniffer等等,其实功能都大同小异,也可以自由选择,只要能达到抓包的目的,用什么工具并没有很大的区别。

转:https://mp.weixin.qq.com/s?__biz=MjM5MzIzODE5Nw==&mid=2651705908&idx=1&sn=5b92d448a3312f8169b401ab753884cd&chksm=bd636fee8a14e6f8a2304e53949154b3b1b64f57feff6f96fb47db144b0ee2ccc53eca03a7ba&mpshare=1&scene=23&srcid=0706qL186cGxUQ7E2A1289Qz#rd

fidder(介绍)的更多相关文章

  1. fidder从基础到熟练

    一.fidder介绍 1.Fiddler是一款由C#语言开发的免费http调试代理软件,有.net 2 和 .net 4 两种版本.Fiddler能够记录所有的你电脑和互联网之间的http通讯,Fid ...

  2. App开发如何利用Fidder,在api接口还没有实现的情况下模拟数据,继续开发

    相信app开发很多时候,都是等后台出接口,拿到数据调试错误.殊不知,我们完全可以不用等,只要有约定好的接口定义文档,借助工具就能做到,自己模拟数据返回~      下面主要是在项目组开发过程中,使用F ...

  3. Fiddler工具详细介绍

    百度看到Fiddler工具的详细介绍,转载收藏,侵权删,原文地址:http://blog.csdn.net/qq_21445563/article/details/51017605 前部分讲解Fidd ...

  4. Fiddler -工具使用介绍(附:拦截请求并修改返回数据)(转)

    一.Fiddler 介绍 Fiddler 是一个使用 C# 编写的 http 抓包工具.它使用灵活,功能强大,支持众多的 http 调试任务,是 web.移动应用的开发调试利器. 1,功能特点 同 H ...

  5. Fidder详解之get和post请求

    前言 本文会对Fidder这款工具的一些重要功能,进行详细讲解,带大家进入Fidder的世界,本文会让你明白,Fidder不仅是一个抓包分析工具,也是一个请求发送工具,更加可以当作为Mock Serv ...

  6. (转)Fidder详解之get和post请求

    https://www.cnblogs.com/langhuagungun/p/7737204.html 前言 本文会对Fidder这款工具的一些重要功 能,进行详细讲解,带大家进入Fidder的世界 ...

  7. javaweb基础(10)_HttpServletRequest原理介绍

    一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象 ...

  8. Fidder详解-工具简介(保存会话、decode解码、Repaly、自定义会话框、隐藏会话、会话排序)

    前言 本文会对Fidder这款工具的一些重要功能,进行详细讲解,带大家进入Fidder的世界,本文会让你明白,Fidder不仅是一个抓包分析工具,也是一个请求发送工具,更加可以当作为Mock Serv ...

  9. CSS3 background-image背景图片相关介绍

    这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...

随机推荐

  1. Linux之nfs服务

    1.二进制安装nfs 2.作为共享存储挂载在三台web的网站根目录下实现,在任意一台web上修改的结果,其余两台都可以看到 [root@localhost ~]# yum install rpcbin ...

  2. 国际化之iPhone设备支持的语种

    有没有想过,iPhone 语言到底支持多少语言呢?我倒是搜索了一下,整理出下面一份列表,供大家参考 参考链接: https://www.ibabbleon.com/iOS-Language-Codes ...

  3. Mac本地环境配置以及安装织梦CMS,增加新的坑解决办法

    Mac上其实已经自带了Apache和PHP,只是默认关闭的.开启一下就行了. Apache配置 apache已经自带了,只需在“终端”输入命令开启下就行了. ​​​开启apache服务 sudo ap ...

  4. springboot获取properties文件的配置内容(转载)

    1.使用@Value注解读取读取properties配置文件时,默认读取的是application.properties. application.properties: demo.name=Name ...

  5. jvm理论-常量池-string

    字符串常量池-常量项(cp_info)结构 CONSTANT_String_info{ u1 tag=8; u2 string_index;//存放 CONSTANT_Utf8_info 指针 } C ...

  6. Substr与mb_substr区别

      <?php $str = substr('helloword',3,4);//从下标3开始截取截取4个字符 $str = substr('helloword',3);//从截取掉前三个字符 ...

  7. java AOP Before, After, AfterReturning, AfterThrowing, or Around 注解

    https://www.eclipse.org/aspectj/doc/next/adk15notebook/ataspectj-pcadvice.html Advice In this sectio ...

  8. jquery核心

    1.找到所有 p 元素,并且这些元素都必须是 div 元素的子元素 $("div > p"); 2.设置页面背景色 $(document.body).css("ba ...

  9. Spring Cloud Netflix Zuul 重试会自动跳过经常超时的服务实例的简单说明和分析

    在使用E版本的Spring Cloud Netflix Zuul内置的Ribbon重试功能时,发现Ribbon有一个非常有用的特性: 如果某个服务的某个实例经常需要重试,Ribbon则会在自己维护的一 ...

  10. 关于CALayer导致的crash问题

    push到一个页面进行绘图时,设置如下: CALayer * layer = [CALayer layer]; layer.frame = CGRectMake(, , , ); layer.dele ...