前言:
✌ 作者简介:渴望力量的哈士奇 ✌,大家可以叫我 🐶哈士奇🐶 ,一位致力于 TFS 赋能的博主 ✌
🏆 CSDN博客专家认证、新星计划第三季全栈赛道 top_1 、华为云享专家、阿里云专家博主 🏆
📫 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀
💬 人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。💬
🔥 如果感觉博主的文章还不错的话,还请👍关注、点赞、收藏三连支持👍一下博主哦
文章目录
🐳 Fiddler 工作原理🐳 为什么使用 Fiddler🐳 Fiddler 抓取CSDN登录小案例上一章节我们介绍了一款轻量、便捷的 “浏览器抓包工具 - 开发者工具” ,接下来就看一下第二款基于代理的功能很强大的工具功能- fiddler 。(感兴趣的话可以参考我之前写的这篇 《一文学会 - Fiddler抓包快速实战》)
🐳 Fiddler 工作原理
见下图:
从图中可以看到,正常的情况下,请求是通过我们的设备直接发送给服务器,由服务器给予一个返回请求的内容。
但是有了fiddler
的加入之后,在中间加了一层拦截的机制。这个机制让请求到服务器之间多了一层过滤,这个拦截的机制也叫做代理(Proxy)
。
除了在中间过滤之外fiddle
还可以将过滤的内容抓取下来。
好了接下来就在聊一聊为什么做接口测试要使用"fiddler"
。
🐳 为什么使用 Fiddler
首先,fiddler 比浏览器更灵活更快速的抓取到我们发起的 http请求 。其次,fiddler 不但可以抓取请求,甚至还可以拦截、修改、自定义返回的请求。这样就方便我们进行一些请求的修改与调试。最后,它还是一个非常强大的过滤器
,能够过滤出我们想要并且需要屏蔽的请求。
🐳 Fiddler 抓取CSDN登录小案例
具体如何安装这里就不做过多介绍了,Windosw系统的同学参考文章开头的"一文学会 - Fiddler抓包快速实战 "
,Mac系统的同学参考 “如何优雅的在 Mac 上安装fiddler [无需mono - 完美解决]” 。
开启 fiddler 的代理,接下面,就尝试通过账号、密码的方式登录 CSDN ,看看是否能够抓取到我们登录的信息。
下图中就是我们在登录页面看到的登录 URL 与 fiddler 抓包抓到的 HTTP 请求。
可以看到登录的请求信息已经被拦截下来(其实拦截下来的数据包并不是图中仅有的四个,而是很多,之所以显示了四个是因为我们通过过滤功能过滤了 只包含有dologin
的 url 请求),除了请求的body
请求入参信息之外,还可以在 Headers 看到更多的信息,比如请求方法、host、请求的 URI 、Cache、Cookies …
见下图:
如此就完成了一个完整的抓包动作。
可能没接触过的同学依然有疑问,虽然抓到数据包了,但对这个过程究竟是怎么实现的依然会很疑惑。其实原理很简单,在我们启用 fiddler 之后,它给浏览器添加了一个代理服务器。通过浏览器右上角的菜单栏(就是那三个点)点击设置,选择高级选项,再点击 “打开代理设置” 就可以看到本地网络的代理设置。
Windows 系统:在浏览器输入栏输入chrome://settings
打开浏览器的设置页面,再点击高级,选择"打开代理设置"Mac系统:在浏览器输入栏输入chrome://settings/system
打开浏览器的设置页面,选择"打开代理设置"
我们的每一次请求与响应都会经过 fiddler 的这层代理,这就是抓包工具实现抓包的原理。
OK,今天这一章节只是简单的介绍了一下 fiddler 如何安装、如何抓包,因为之前写过详细的 fiddler 的使用教程,这里就不再过多的重复了,感兴趣的小伙伴可以通过 ( 《一文学会 - Fiddler抓包快速实战》) 深入的了解。