欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# 使用Fiddler捕獲本地HttpClient發(fā)出的請求操作

 更新時間:2020年10月21日 09:26:17   作者:丨背水丨  
這篇文章主要介紹了C# 使用Fiddler捕獲本地HttpClient發(fā)出的請求操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

示例接口定義

為了方便筆者先自己寫了個簡單的接口用于展示,返回當前時間,具體如下

/// <summary>
/// GetToday.
/// </summary>
/// <returns></returns>
[HttpGet]
[Route("GetTime/Today")]
public MyDateTime GetToday()
{
 var now = DateTime.Now;
 return new MyDateTime
 {
  Year = now.Year,
  Month = now.Month,
  Day = now.Day,
  Hour = now.Hour,
  Minute = now.Minute,
  Second = now.Second,
 };
}

上面的MyDateTime是展示用的自定義類,其中的屬性已在return中表示。

使用HttpClient發(fā)起請求

var httpClient = new HttpClient();
var url = "http://localhost:5000/GetTime/Today";
var response = await httpClient.GetAsync(new Uri(url));

不出意外Fiddler是抓不到的。

配置Fiddler

打開Tools->Options

然后切換到Connections選項卡,我們可以看到Fiddler默認監(jiān)聽的是8888端口,這就好辦了我們需要開啟HttpClient中的代理。

設(shè)置HttpClient

修改請求為:

var httpClient = new HttpClient(new HttpClientHandler
{
 UseProxy = true, // 使用代理,
 Proxy = new WebProxy(new Uri("http://localhost:8888")) // port:8888就是Fiddler默認監(jiān)聽的端口
});

var url = "http://localhost:5000/GetTime/Today";
var response = await httpClient.GetAsync(new Uri(url));

再次發(fā)起請求

Fiddler已經(jīng)抓到了

補充知識:解決Fiddler無法捕獲本地HttpWebRequest(C#.net)請求和HttpURLConnection(Java)請求

方法很簡單,就是設(shè)置本地代理

C#

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);

req.Proxy = new WebProxy("127.0.0.1:8888", true);

Java

jre -DproxySet=true -DproxyHost=127.0.0.1 -DproxyPort=8888 MyApp

或者

System.setProperty("http.proxyHost", "localhost");
System.setProperty("http.proxyPort", "8888");
System.setProperty("https.proxyHost", "localhost");
System.setProperty("https.proxyPort", "8888");

以上這篇C# 使用Fiddler捕獲本地HttpClient發(fā)出的請求操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論