小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。
前言
心态好了,就没那么累了。心情好了,所见皆是明媚风景。
“一时解决不了的问题,那就利用这个契机,看清自己的局限性,对自己进行一场拨乱反正。”正如老话所说,一念放下,万般自在。如果你正被烦心事扰乱心神,不妨学会断舍离。断掉胡思乱想,社区垃圾情绪,离开负面能量。心态好了,就没那么累了。心情好了,所见皆是明媚风景。
Fiddler 下载
fiddler 是一个很好的抓包工具,默认是抓 http请求 的,对于 pc上的https请求,会提示网页不安全,这时候需要在浏览器上安装证书。
-
用
fiddler抓包时候,打开百度网页:www.baidu.com -
提示:网页不安全
学习接口测试必学 http协议,如果直接讲协议,我估计小伙伴们更懵,为了更好的理解协议,先从抓包开始。
结合抓包工具讲 http协议 更容易学一些。
-
启动
Fiddler,打开菜单栏中的Tools > Fiddler Options,打开Fiddler Options”对话框。(我的是莫名其妙的就汉化了)如果汉化了就是,打开菜单栏的 工具>选项,打开“选项”对话框。 -
在
“Fiddler Options”对话框切换到“Connections”选项卡,然后勾选“Allow romote computers to connect”后面的复选框,然后点击“OK”按钮。如果汉化了就是,打开”选项”对话框,打开“连接”选项打开对话框,然后勾选“允许远程计算机连接”后面的复选框。 -
在本机命令行输入:
ipconfig,找到本机的ip地址。 -
打开
android设备的“设置”->“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,然后勾选“显示高级选项”。 -
在
“代理”后面的输入框选择“手动”,在“代理服务器主机名”后面的输入框输入电脑的ip地址,在“代理服务器端口”后面的输入框输入8888,然后点击“保存”按钮。 -
然后启动
android设备中的浏览器,访问百度的首页,在fiddler中可以看到完成的请求和响应数据。 -
配置可以
抓取https请求
导出证书
-
点右上角
Actions(操作)按钮 -
选第二个选项,导出到桌面,此时桌面上会多一个文件:
FiddlerRoot.cer,如图。
导入到 firefox 浏览器
-
打开右上角浏览器设置》选项》高级》证书》查看证书》证书机构》导入 -
勾选文件导入
-
打开文件后,会弹出个框,勾选三个选项就完成操作啦。
证书导出失败问题
在点 Actions(操作)时候出现Export Failed:The root certificate could not be located.最近有很多小伙伴在fiddler导出证书的时候,遇到无法导出的问题,收集了几种解决办法,供参考。
一、证书无法导出
- 在点
Actions(操作)时候出现Export Failed:The root certificate could not be located.
二、无法导出问题解决方案
-
首先确保安装的
Fiddler是较新的版本,先关闭fiddler -
下载并安装Fiddler证书生成器下载地址:www.telerik.com/docs/defaul… -
点
Tools>Fiddler Options -
勾选
Capture HTTPS traffic -
点
Actions按钮,Export Root Certificate Desktop按钮导出到桌面
三、删除证书
-
有些小伙伴可能之前装过一些fiddler证书,安装的姿势不对,导致新的证书不起作用,这时候需要先删掉之前的证书了
- 方法一:从fiddler里打开证书管理界面
- 方法二、从文件管理器输入:certmgr.msc并回车
-
搜索之前安装的fiddler证书,找到之后全部删除
-
重新下载证书生成器:www.telerik.com/docs/defaul… 一路傻瓜式安装,遇到警告什么的直接忽略就行。
-
安装好证书后,按照1.1章节Fiddler抓包1-抓firefox上https请求的浏览器导入证书就行了(弄好之后,重启电脑就OK了)
如何找出需要的请求
-
打开fiddler后,左边会话框区域刷刷刷的很多请求,那么如何有效的找出自己需要的请求呢?
-
首先第一步:清屏(cls),在左下角命令行输入cls,清空屏幕(清屏也可以使用快捷键Ctrl+X)
-
第二步在浏览器输入url地址的时候,记住这个地址,如打开博客首页:juejin.cn/user/862483… 在点击登录按钮的时候,不要做多余的操作了,然后查看fiddler会话框,这时候有好几个请求。
get 和 post 请求参数区别
- 关于
get和post的功能上区别就不说了,大家自己查资料,这里主要从fiddler抓包的层面查看请求参数上的区别 get请求的Raw参数查看,主要分三部分:
- 第1部分是请求
url地址 - 第2部分是
host地址 - 第3部分是
请求头部信息header
🎉总结:
-
更多参考精彩博文请看这里:《陈永佳的博客》
-
喜欢博主的小伙伴可以加个关注、点个赞哦,持续更新嘿嘿!