求助,Fiddler代理后网络问题.必须有果

求助,Fiddler代理后网络问题.必须有果,第1张

由于代理服务器只打开了HTTP代理功能而关闭了其它端口,因此理论上无法实现你说希望的效果,除非公司的网管对你网开一面,在其主机重新设定代理选项。不过QQ还是可以巧妙地使用,一种方法便是加入会员以便以HTTP方式连接,另一种方式便是使用SocksOnline。使用SocksOnline之后,只要电脑能够以HTTP方式上网,那么使用QQ等基于Sock连接的网络软件也不成问题。SocksOnline的巧妙之处在于它让你自己的电脑作为代理服务器,从而将Sock端口转为普通未封闭的80端口。打开SocksOnline之后,该程序默认占用你的1080端口作为Sock端口,请不要改动。随后,点击“系统参数”,选择“网络设置”,将“使用Socks5代理服务器”前复选框选中。此时,你可以将Socks5代理服务器设定为“127001”,端口设为“1080”。其中“127001”为你的内部静态IP。最后,单击测试以检验代理服务器的有效性。

安装完 Fiddler 后,我们每次打开浏览器输入 url,Fiddler 便会捕获到我们的 http 请求(Fiddler 是以代理 web 服务器的形式工作的,它使用代理地址:127001,端口:8888 当浏览器打开时 Fiddler 会自动设置代理,退出的时候它会自动注销代理,这样就不会影响别的程序)。但是,如果要捕获 https 的请求,我们还需要进行一些额外的设置。

要抓取走 HTTPS 的 JS 内容,Fiddler 必须解密 HTTPS 流量。但是,浏览器将会检查数字证书,并发现会话遭到窃听。为了骗过浏览器,Fiddler 通过使用另一个数字证书重新加密 HTTPS 流量。Fiddler 被配置为解密 HTTPS 流量后,会自动生成一个名为 DO_NOT_TRUST_FiddlerRoot 的 CA 证书,并使用该 CA 颁发每个域名的 TLS 证书。若 DO_NOT_TRUST_FiddlerRoot 证书被列入浏览器或其他软件的信任 CA 名单内,则浏览器或其他软件就会认为 HTTPS 会话是可信任的、而不会再弹出“证书错误”警告。

首先,打开 Fiddler,在菜单栏中依次选择 Tools->Fiddler Options->HTTPS

勾上后,Fiddler 会提示你安装一个证书。安装完后点击上图中的 "Export Root" 按钮,将证书下载到桌面。

接着将证书导入到浏览器。这里以 chrome 举例,依次选择 设置->管理证书 将保存在桌面的证书导入即可(其他浏览器类似,通常有个“证书”选项设置)。

也可以直接双击下载下来的证书,进行安装。

我们打开 wwwbaiducom,这时就可以愉快地捕获 https 请求了!

Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据 使用Fiddler无论对开发还是测试来说,都有很大的帮助。

阅读目录

Fiddler的基本介绍

Fiddler的官方网站: wwwfiddler2com

Fiddler官方网站提供了大量的帮助文档和视频教程, 这是学习Fiddler的最好资料。

Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用net语言进行扩展

你对HTTP 协议越了解, 你就能越掌握Fiddler的使用方法 你越使用Fiddler,就越能帮助你了解HTTP协议

Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具

Fiddler的工作原理

Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127001, 端口:8888 当Fiddler会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler

同类的其它工具

同类的工具有: httpwatch, firebug, wireshark

Fiddler 如何捕获Firefox的会话

能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。 Fiddler2启动的时候默认IE的代理设为了127001:8888,而其他浏览器是需要手动设置的,所以将Firefox的代理改为127001:8888就可以监听数据了。

Firefox 上通过如下步骤设置代理

点击: Tools -> Options, 在Options 对话框上点击Advanced tab - > network tab -> setting

Firefox 中安装Fiddler插件

修改Firefox 中的代理比较麻烦, 不用fiddler的时候还要去掉代理。 麻烦

推荐你在firefox中使用fiddler hook 插件, 这样你非常方便的使用Fiddler获取firefox中的request 和response

当你安装fiddler后, 就已经装好了Fiddler hook插件, 你需要到firefox中去启用这个插件

打开firefox tools->Add ons -> Extensions 启动 FiddlerHook

Fiddler如何捕获HTTPS会话

默认下,Fiddler不会捕获HTTPS会话,需要你设置下, 打开Fiddler Tool->Fiddler Options->HTTPS tab

选中checkbox, 弹出如下的对话框,点击"YES"

点击"Yes" 后,就设置好了

Fiddler的基本界面

看看Fiddler的基本界面

Inspectors tab下有很多查看Request或者Response的消息。 其中Raw Tab可以查看完整的消息,Headers tab 只查看消息中的header 如下图

Fiddler的HTTP统计视图

通过陈列出所有的HTTP通信量,Fiddler可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。

选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化

QuickExec命令行的使用

Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。

常见得命令有

help 打开官方的使用页面介绍,所有的命令都会列出来

cls 清屏 (Ctrl+x 也可以清屏)

select 选择会话的命令

png 用来选择png后缀的

bpu 截获request

Fiddler中设置断点修改Request

[作者:小坦克] Fiddler最强大的功能莫过于设置断点了,设置好断点后,你可以修改httpRequest 的任何信息包括host, cookie或者表单中的数据。设置断点有两种方法

第一种:打开Fiddler 点击Rules-> Automatic Breakpoint ->Before Requests(这种方法会中断所有的会话)

如何消除命令呢? 点击Rules-> Automatic Breakpoint ->Disabled

第二种: 在命令行中输入命令: bpu wwwbaiducom (这种方法只会中断wwwbaiducom)

如何消除命令呢? 在命令行中输入命令 bpu

看个实例,模拟博客园的登录, 在IE中打开博客园的登录页面,输入错误的用户名和密码,用Fiddler中断会话,修改成正确的用户名密码。这样就能成功登录

1 用IE 打开博客园的登录界面 http://passportcnblogscom/loginaspx

2 打开Fiddler, 在命令行中输入bpu http://passportcnblogscom/loginaspx

3 输入错误的用户名和密码 点击登录

4 Fiddler 能中断这次会话,选择被中断的会话,点击Inspectors tab下的WebForms tab 修改用户名密码,然后点击Run to Completion 如下图所示。

5 结果是正确地登录了博客园

Fiddler中设置断点修改Response

当然Fiddler中也能修改Response

第一种:打开Fiddler 点击Rules-> Automatic Breakpoint ->After Response (这种方法会中断所有的会话)

如何消除命令呢? 点击Rules-> Automatic Breakpoint ->Disabled

第二种: 在命令行中输入命令: bpafter wwwbaiducom (这种方法只会中断wwwbaiducom)

如何消除命令呢? 在命令行中输入命令 bpafter,

具体用法和上节差不多,就不多说了。

Fiddler中创建AutoResponder规则

Fiddler 的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上。

看个实例 1 打开博客园首页,把博客园的logo保存到本地,并且对做些修改。

2 打开Fiddler 找到logo的会话, http://staticcnblogscom/images/logo_2012_lantern_festivalgif, 把这个会话拖到AutoResponer Tab下

3 选择Enable automatic reaponses 和Unmatched requests passthrough

4 在下面的Rule Editor 下面选择 Find a file 选择本地保存的 最后点击Save 保存下。

5 再用IE博客园首页, 你会看到首页的用的是本地的。

Fiddler中如何过滤会话

每次使用Fiddler, 打开一个网站,都能在Fiddler中看到几十个会话,看得眼花缭乱。最好的办法是过滤掉一些会话,比如过滤掉的会话 Fiddler中有过滤的功能, 在右边的Filters tab中,里面有很多选项, 稍微研究下,就知道怎么用。

Fiddler中会话比较功能

选中2个会话,右键然后点击Compare,就可以用WinDiff来比较两个会话的不同了 (当然需要你安装WinDiff)

Fiddler中提供的编码小工具

点击Fiddler 工具栏上的TextWizard, 这个工具可以Encode和Decode string

Fiddler中查询会话

用快捷键Ctrl+F 打开 Find Sessions的对话框,输入关键字查询你要的会话。 查询到的会话会用**显示

Fiddler中保存会话

有些时候我们需要把会话保存下来,以便发给别人或者以后去分析。 保存会话的步骤如下:

选择你想保存的会话,然后点击File->Save->Selected Sessions

Fiddler的script系统

Fiddler最复杂的莫过于script系统了 官方的帮助文档: http://wwwfiddler2com/Fiddler/dev/ScriptSamplesasp

首先先安装SyntaxView插件,Inspectors tab->Get SyntaxView tab->Download and Install SyntaxView Now 如下图

安装成功后Fiddler 就会多了一个Fiddler Script tab, 如下图

在里面我们就可以编写脚本了, 看个实例 让所有cnblogs的会话都显示红色。

把这段脚本放在OnBeforeRequest(oSession: Session) 方法下,并且点击"Save script"

if (oSessionHostnameIs("wwwcnblogscom")) {

oSession["ui-color"] = "red";

}

这样所有的cnblogs的会话都会显示红色

如何在VS调试网站的时候使用Fiddler

我们在用visual stuido 开发ASPNET网站的时候也需要用Fiddler来分析HTTP, 默认的时候Fiddler是不能嗅探到localhost的网站。不过只要在localhost后面加个点号,Fiddler就能嗅探到。

例如:原本ASPnet的地址是 http://localhost:2391/Defaultaspx, 加个点号后,变成 http://localhost:2391/Defaultaspx 就可以了

第二个办法就是在hosts文件中加入 127001 localsite

如何你访问http://localsite:端口号 。 这样Fiddler也能截取到了。

Response 是乱码的

有时候我们看到Response中的HTML是乱码的, 这是因为HTML被压缩了, 我们可以通过两种方法去解压缩。

1 点击Response Raw上方的"Response is encoded any may need to be decoded before inspection click here to transform"

2 选中工具栏中的"Decode"。 这样会自动解压缩。

你是要问android设备上怎么设置http代理吗,这里来给你解答一下如何在android系统上快速设置http代理,可以直接在网络设置中操作的。

最常用的通过设置页面操作,操作路径:设置中找到WLAN,选中网络长按(不同设备操作方式不一样)--修改网络--高级选项,将代理选项设置为手动,在代理服务器主机名处填写你要设置的代理服务器IP,端口填写对应的端口(如Fiddler为8888),设置完毕后点击保存即可。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 求助,Fiddler代理后网络问题.必须有果

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情