文章目录:
fiddler怎么修改网页嵌入的JS代码
虽然可以通过调试工具的控制台来动态执行JS代码,但有时候却远远不够用.
特别是当产线环境不能随意修改文件情况下,用线上环境来调试本地代码更是迫切的需求.
(往往本地测试通过,上线后却是各种bug.)
今天分享一下如何用Fiddler来修改并调试线上的JS代码.
以博客园首页为例子,用我本地的一个js文件来替换它的一个js.
查看首页源码发现一个js,就拿它开刷了.
打开fiddler,捕获博客园的首页请求. 找到“aggsite.js”的请求.
这里有个技巧,可以通过 “select”命令来筛选js请求. 在下面的命令框输入“select script”回车即可. 如下图.
接着把这个请求拖动到“AutoResponder”面板.
拖动之前记得先勾上 “Enable automatic responses”和 “Permit passthrough for unmatched requests”.
然后在Rule Editor的第二下拉框选择 “Find a file”来选择本地的JS文件, 选择后点 Save.
这里我用本地的“test fiddler.js”来替换博客园首页的“aggsite.js”.
“test fiddler.js”内容如下. 就是向body追加一段红色文字.
$(function(){
var p=$("p/").text("这是fiddler加上的JS").css("text-align","center").css("color","red");
$("body").prepend(p);
});
fiddler怎么进行网页抓包
打开Fiddler,执行菜单栏 Tools - Fiddler Options 打开设置界面
切换到Connections选项卡,如图设置和勾选(如果要捕获https的请求,切换到HTTPS选项卡,勾选对应的选项)
获取PC的IP地址方法一:鼠标hover至Fiddler右上角的网络图标,查看本机IP,如图:192.168.1.107。注意,连上同一wifi后,需手机和PC在同一IP段内才能正常抓包。
为什么fiddler抓不到网页的包
Fiddler不能抓以上三个地址的流量,是因为IE hard
code这三个地址的流量不经proxy。(据说ie9以上的版本fix了这个问题,未经验证)。要抓localhost的流量,其实方法很简单,将
url中的localhost改成这台服务器的计算机名就可以了。
2,纯IPV6环境
在纯IPV6环境中,Fiddler用默认设置也是无法抓到流量的。需要在Tool-Fiddler
Options里面:(1)General选项卡勾上Enable IPv6 (2)Connections选项卡勾上Allow remote
computers to connect然后重启Fiddler.
3,天然不能绑定Proxy的系统,例如一些server系统
可将fiddler config成一个reverse proxy。
(0)在Tool-Fiddler Options,Connections选项卡勾上Allow remote computers to connect然后重启Fiddler。
(1)运行Regedit
(2)在HKCU\Software\Microsoft\Fiddler2中创建一个新的DWORD,名字是“ReverseProxyForPort”
(3)将这个DWORD的值设置成你要调试的网站的端口号,默认是80。注意,DWORD的值默认是16位的,例如说端口80,要设置成10位的80,也就是16位的50。
(4)重启fiddler
如何破解请在微信客户端打开链接?
使得fiddler来抓包查看微信浏览器的网页源码,利用fiddler就可以破解此问题了。
需要工具: 下载安装后
第二步:
打开这个选项:
设置代理:allow remote computer to connect 端口为88888 浏览器会自动设置
第四步下载插件:
效果:
么fiddler抓不到网页的包Fiddler不能抓以上三个地址的流量,是因为IE hard code这三个地址的流量不经proxy。(据说ie9以上的版本fix了这个问题,未经验证)。要抓localhost的流量,其实方法很简单,将url中的localhost改成这台服务器的计算
wifi后,需手机和PC在同一IP段内才能正常抓包。为什么fiddler抓不到网页的包Fiddler不能抓以上三个地址的流量,是因为IE hard code这三个地址的流量不经proxy。(据说ie9以上的版本fix了这个问题,未经验证)。要抓localhost的流量,其
址的流量不经proxy。(据说ie9以上的版本fix了这个问题,未经验证)。要抓localhost的流量,其实方法很简单,将url中的localhost改成这台服务器的计算机名就可以了。2