2010-07-18 77 views
1

我使用ASP.Net + .Net 3.5 + VS 2008 + IIS 7.0 + C#開發Web應用程序。我想使用Fiddler來調試(即監視請求和響應Http流量)本地流量 - 即當我測試VSTS 2008內置的測試ASP.Net Web服務器內的Web應用程序時。這是可行的嗎?如果是,如何監控這種流量?例如,在VSTS 2008內置的ASP.Net測試Web應用程序服務器中,我想要監視發送到http://localhost:1870/Default.aspx的請求流量及其響應(即在VSTS 2008中按F5時)。是否可以使用Fiddler來調試Http流量問題?

順便說一句:我以前認爲提琴手只能用於監視端口80 Http流量,不知道是否可以監視端口1870?

+1

這有幫助嗎? http://stackoverflow.com/questions/1470634/get-http-requests-and-responses-made-using-httpwebrequest-httpwebresponse-to-show/1470730#1470730 – CraigTP 2010-07-18 13:12:20

+0

嗨CraigTP,我不認爲這個鏈接涵蓋了我我很困惑。如果我遺漏了任何東西,請糾正我。 – George2 2010-07-18 14:17:19

+0

下面是D Hoerster的正確答案。 Fiddler從來不關心服務器使用的端口。 – EricLaw 2010-07-19 22:03:14

回答

2

你試過adding a dot之後localhost?在我的機器上進行快速測試似乎表明這在IE中是需要的,但實際上可能不在Firefox中。

+0

嗨馬丁,我試過這個點的作品,如果我直接訪問一個網址。但是在用點URL訪問頁面之後,如果我點擊了一個鏈接(例如,在代碼中URL被寫爲「test.aspx」),那麼ASP.Net測試服務不知道如何訪問本地主機將會出現錯誤。 :1870/test.aspx(只知道如何訪問localhost:1870/test.aspx)。任何想法如何解決「點」解決方案中的頁面鏈接問題? – George2 2010-07-18 14:15:33

+0

在你的 「OnBeforeRequest」 的解決方案,對於這一說法 - 「如果(oSession.host ==」 「)」,應更改爲「如果(oSession.host == 「本地主機:1870」)一樣嗎?對於聲明中的問題「oSession.host =本地主機:」應更改爲「oSession.host =本地主機:1870」? – George2 2010-07-18 14:36:19

+0

@George - 不,我並不需要做對我來說,開發網絡服務器運行良好與聯繫。你在你的應用程序中使用絕對URL? – 2010-07-18 15:32:53

1

不小提琴手忽略'本地主機'嘗試更改網址到您的機器主機名。

+1

我認爲,如果你嘗試卡西尼不接受連接(只允許本地連接,並得到容易混淆!)。 – 2010-07-18 13:31:45

+0

嗨狗的耳朵,你的意思是,我們可以不使用Fiddler監控卡西尼交通 – George2 2010-07-18 14:22:50

+0

「我認爲,如果你嘗試卡西尼不接受連接」 - ?我想你的意思卡西尼不使用主機名,正確不允許 – George2 2010-07-18 14:23:20

2

如果您將URL更改爲'http://ipv4.fiddler:1870/ ..'而不是'http://localhost:1870/ ...',則提琴手會攔截您的流量並顯示請求。本地主機不通過wininet(我相信)哪個提琴手會忽略。 Fiddler將ipv4.fiddler註冊爲localhost,以便您可以監控本地流量。

您還可以添加一個條目到您的主機文件並指定一些URL(例如mysite.com 127.0.0.1)並將其用作您的URL(例如http://mysite.com:1870/..),而提琴手也會選擇它。

相關問題