Fidder常见问题

Posted Harris-H

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Fidder常见问题相关的知识,希望对你有一定的参考价值。

Fidder常见问题

a.Fidder出现灰色锁

connect是为了建立http tunnel,connect是http众多方法中的其中一种,它跟post、get、put、options方法是并列的。但是它的使用场景很特殊。只有在受限制的网络环境中(防火墙、NAT、代理器)并且是https通信时,客户端使用http connect请求代理服务器,代理服务器使用connect方法与目标服务器建立http tunnel,通道建立后,客户端与服务器进行通信,代理服务器就像透明一样,只是接收、转发tcp stream。

为什么要建立http tunnel呢?
这是因为,网络环境受限,客户端无法直接访问某些网络,所以只能通过代理服务器访问网络,然后,将内容转发给客户端,从宏观上看,客户端与服务器端就像建立了一条隧道一样。
但是由于http tunnnel可控性不强,所以,服务器通常会限制"可connect的端口"(一般只开放SSL的443端口)

如果理解了上边的话,那么也就明白了为什么fiddler抓包时,出现大量connect连接?
因为fiddler是代理,访问百度网页(使用了https协议),满足了使用connect条件,所以客户端会使用connect方法与目标服务器建立http tunnel,一旦connection建立完成,后续fiddler会转发、接收所有的tcp stream。

当然,并不是所有的受限网络(restricted network),https通信时,都会使用connect建立http tunnel,如果目标服务器限制connect方法,那么就会使用其它方法来建立通道(post/get);如果服务器不支持http tunnel,那么就需要安装http tunnel server端的程序,客户端不支持http tunnel,那么客户端就需要安装http tunnel client程序;http tunnel程序包含两部分,server端程序和client端程序;


17:09:02:9124 !SecureClientPipeDirect failed: System.IO.IOException 由于远程方已关闭传输流,身份验证失败。 for pipe (CN=gateway.icloud.com.cn, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com)

1.安装证书

https://www.jianshu.com/p/ff010d38d57e


b.Fidder 挂梯子之后失效

还有一个问题,就是手机挂梯子后抓不到,之前表现为不挂梯子正常抓,挂了梯子fiddler没有任何反应。

解决方法:
VPN 需要设置 Fiddler设置的代理地址和端口 而不是wifi

wifi 那设置 Fiddler 监听端口(在设置里,默认端口8888,并且不接受外部连接)。前提是那 app 会走 wifi 配置的代理

你可以电脑连vpn,然后手机wifi配置用fiddler代理,这样最终数据还是走的电脑的vpn,然后fiddler也能抓到

以上是关于Fidder常见问题的主要内容,如果未能解决你的问题,请参考以下文章

fidder重复创建数据+模拟接口响应数据+fidder接口测试

通过fidder抓npm拉包协议

通过fidder抓npm拉包协议

Fidder详解之get和post请求

fidder如何设置代理转发

01-fidder配置和jupyter环境安装