这篇文章主要介绍了C# 使用Fiddler捕获本地HttpClient发出的请求操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
示例接口定义
为了方便笔者先自己写了个简单的接口用于展示,返回当前时间,具体如下
/// <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发起请求
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默认监听的是8888端口,这就好办了我们需要开启HttpClient中的代理。
设置HttpClient
修改请求为:
var httpClient = new HttpClient(new HttpClientHandler
{
 UseProxy = true, // 使用代理,
 Proxy = new WebProxy(new Uri("http://localhost:8888")) // port:8888就是Fiddler默认监听的端口
});
var url = "http://localhost:5000/GetTime/Today";
var response = await httpClient.GetAsync(new Uri(url));
再次发起请求
Fiddler已经抓到了
补充知识:解决Fiddler无法捕获本地HttpWebRequest(C#.net)请求和HttpURLConnection(Java)请求
方法很简单,就是设置本地代理
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发出的请求操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持得得之家。
本文标题为:C# 使用Fiddler捕获本地HttpClient发出的请求操作
				
        
 
            
        - C# 使用Aspose.Cells 导出Excel的步骤及问题记录 2023-05-16
 - Unity Shader实现模糊效果 2023-04-27
 - Unity3D实现渐变颜色效果 2023-01-16
 - 如何使用C# 捕获进程输出 2023-03-10
 - c# 模拟线性回归的示例 2023-03-14
 - .NET CORE DI 依赖注入 2023-09-27
 - Oracle中for循环的使用方法 2023-07-04
 - user32.dll 函数说明小结 2022-12-26
 - WPF使用DrawingContext实现绘制刻度条 2023-07-04
 - 在C# 8中如何使用默认接口方法详解 2023-03-29
 
						
						
						
						
						
				
				
				
				