簡體   English   中英

無法在 Fiddler 中顯示 netTcpBinding 請求

[英]Can't get netTcpBinding requests to show up in Fiddler

我有一個具有兩個端點的 WCF 服務。 一種使用 basicHttpBinding,另一種使用 netTcpBinding。 這是我的配置...

<services>
      <service name="SomeService.Service">
        <endpoint address="" binding="basicHttpBinding" bindingConfiguration=""
          name="EndPointHttp" contract="SomeService.IService" />
        <endpoint address="" binding="netTcpBinding" bindingConfiguration=""
          name="EndPointTcp" contract="SomeService.IService" />
        </service>
</services>

但是,當我使用該服務時,我試圖比較兩個請求之間的差異。 所以我正在運行提琴手來做到這一點。 我可以在 Fiddler 中看到 basicHttpBinding 請求,但無法顯示 net.tcp:// 請求。 我該怎么做才能看到這種流量?

Fiddler 是一個HTTP代理,因此它只會捕獲使用 HTTP 協議的請求 - 它不會直接捕獲使用套接字發出的請求。 您可以使用網絡監視器或其他一些低級捕獲工具來執行此操作,但界面不如您習慣使用 Fiddler 的界面好。

此外,正如 Ladislav Mrnka 在另一個答案中指出的那樣,您將查看.NET 消息幀二進制 XML 編碼的二進制字節,因此除非您熟悉它們,否則大多數捕獲看起來都是胡言亂語。

提琴手是 HTTP 嗅探器而不是 TCP 嗅探器。 在 fiddler 中只能看到 HTTP 和 HTTPS 通信。 如果您想查看通過 TCP 傳遞的消息,您必須使用另一個在較低級別工作的工具。 例如 WireShark,但要做好准備,您只會看到一些二進制數據。

Fiddler 是一個HTTP調試器。 如果您不使用 HTTP,例如使用 netTcpBinding,您將無法使用它捕獲流量。 您可以嘗試Wireshark或類似的東西。

如果您對實際消息的外觀感興趣,請嘗試使用 Service Trace。

https://msdn.microsoft.com/en-us/library/ms732023%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM