我遇到一台服务器将数据发送到另一台服务器的问题,所以我想:让我们调试它.我可以设置代理,为什么不使用Fiddler?所以我通过将主机设置为我的计算机的IP(192.168.2.111)并将端口设置为8888,使服务器在我的计算机上运行fiddler.
问题是fiddler正在侦听localhost:8888或127.0.0.1:8888.因此,如果请求是192.168.2.111:8888,则会主动拒绝连接.
我可以让小提琴手听取所有IP吗?
谢谢!
是否可以使用fiddler编辑HTTP请求,以便我在其他地方托管的asp.net应用程序为以下代码块返回true
HttpContext.Current.Request.Url.Host == "localhost"
Run Code Online (Sandbox Code Playgroud) 我想将Fiddler用于特定的应用程序,该应用程序将手动打开和关闭代理(使用FiddlerHook的Firefox 3.6)。那是我要代理的唯一应用程序,但是我似乎找不到找到让Fiddler不将自己设置为WinINET代理的方法。
我已经关闭了“在启动时充当系统代理”和“监视所有连接”,但是当我打开捕获事件时,Fiddler仍将自己设置为WinINET代理。
除非打开捕获事件,否则FiddlerHook不会将事件发送到Fiddler。实际上,如果您将其设置为强制,则可以-请参阅下面的解决方法答案。仍然在寻找更好的。
我通过 Fiddler 代理连接了我的 iPad 并尝试监控流量。但是我的 PC 产生了太多流量,我在非常大的列表中丢失了 iPad 流量。如何设置过滤器:“仅显示提琴手代理流量”?
public async Task<LoginResult> Login(string username, string password)
{
cookies = new CookieContainer();
handler = new HttpClientHandler()
{
CookieContainer = cookies,
UseCookies = true,
AllowAutoRedirect = true,
UseProxy = true,
Proxy = null
};
ThreadActivity.Account = username;
ThreadActivity.Status = "Logging in...";
LoginResult result = new LoginResult();
try
{
cookies = new CookieContainer();
client = new HttpClient(handler);
client.DefaultRequestHeaders.Connection.Add("keep-alive");
client.DefaultRequestHeaders.CacheControl = new CacheControlHeaderValue() { MaxAge = TimeSpan.Zero };
client.DefaultRequestHeaders.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip,deflate,sdch");
client.DefaultRequestHeaders.Add("Accept-Language", "en-US,en;q=0.8");
client.DefaultRequestHeaders.Add("Accept-Charset", "ISO-8859-1");
client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, …Run Code Online (Sandbox Code Playgroud) 我注意到,当客户端发送 CONNECT 请求以启动安全连接以及“200 连接已建立”消息时,fiddler 会发送“connection:close”标头。
通过 SSL 连接向转发 HTTP 代理发出 CONNECT 请求?
正如上面的问题所解释的,客户端和代理之间的连接应该保持活动状态,以便客户端可以随后发送实际请求。
为什么提琴手发送关闭标头?客户端不会因为标头而关闭连接吗?。

我想使用 fiddler 编辑 URL。不必使用 fiddler 脚本,但这是我目前如何做的一个近似值:
if (oSession.url.contains("example.com") {
String oldUrl = oSession.url.ToString();
Regex rgx = new Regex("1.2");
String newUrl = rgx.Replace(oldUrl, "1.0");
}
Run Code Online (Sandbox Code Playgroud)
这段代码在正则表达式实例化行上给了我一个编译器错误:“属性列表不适用于当前上下文”。我不完全确定这意味着什么。
我也不确定如何准确更改 url。
有任何想法吗?
我正在制作一个应用程序,它不断扫描远程网站以进行任何更改。我正在使用System.Net.Http.HttpClient,但我注意到它可能不支持重用连接。
请求一个接一个地执行,但通常需要大约 250 毫秒才能完成。当我在“重用服务器连接”选项打开的情况下打开 Fiddler 时,它会下降到每个请求 150 毫秒。
我想我配置错误HttpClient,但我在 MSDN 参考中找不到任何可以帮助我解决问题的信息。
我有一个连接到Azure中的HTTPS服务的iPhone应用程序.我想通过Fiddler将iPhone调用重定向到http:// localhost:19703,我在本地计算机上运行相同的服务以进行调试.我可以使用以下Fiddler脚本将HTTPS服务重定向到另一个HTTPS服务.但是,如果我使用相同的脚本重定向到localhost:19703,它不起作用.有任何想法吗?
if (oSession.HTTPMethodIs("CONNECT") && (oSession.PathAndQuery == "XXXX.azurewebsites.net:443"))
{
oSession["OriginalHostname"] = oSession.hostname;
oSession.PathAndQuery = "YYYY.azurewebsites.net:443";
}
// If it's an HTTPS tunnel, override the certificate
if (oSession.HTTPMethodIs("CONNECT") && (null != oSession["OriginalHostname"]))
{
oSession["x-overrideCertCN"] = oSession["OriginalHostname"];
oSession["X-IgnoreCertCNMismatch"] = "Server's hostname may not match what we're expecting...";
}
oSession.bypassGateway = true;
Run Code Online (Sandbox Code Playgroud) 我有项目FiddlerApplication可以为我节省一些会话。当我在重新启动后首次启动程序时,100% 失败,然后 10% 失败,90% 工作。
最大的问题是当它失败时它不会在 try/catch 中捕获任何异常。这是我的代码
static class Program
{
[STAThread]
static void Main(string[] args)
{
try
{
browserToRun.GoTo("www.test.com");
FiddlerApplication.AfterSessionComplete += FiddlerApplication_AfterSessionComplete;
//HERE it fails
FiddlerApplication.Startup(8888, true, true, true);
FiddlerApplication.Shutdown();
}
catch (Exception ex)
{
// it is not getting to here
FiddlerApplication.AfterSessionComplete -= FiddlerApplication_AfterSessionComplete;
FiddlerApplication.Shutdown();
}
}
public static void FiddlerApplication_AfterSessionComplete(Session sess)
{
try
{
if (!sess.fullUrl.Contains("test"))
return;
GlobalDownloadLink = sess.fullUrl;
}
catch (Exception ex)
{
successful = false;
throw new System.ArgumentException(ex.Message, "FiddlerApplication_AfterSessionComplete");
}
} …Run Code Online (Sandbox Code Playgroud)