连接到远程通过本地主机

时间:2018-12-17 14:41:21

标签: c# proxy httpclient dotnet-httpclient

我在c#控制台应用程序中进行了http呼叫。网址是在HttpClient内部指定的。但是,我希望它不使用localhost作为代理,而是直接连接到我指定的URL。我打算在工作时将其移至Web窗体应用程序。

我目前可以在Fiddler中看到呼叫,因此必须在某个地方进行配置。

有没有办法做到这一点?

我要尝试此操作的原因是因为在运行curl调用时

curl -x localhost:8888 -XPOST -d 'Metadata="123"' http://uri.uri [Visible in Fiddler. Doesn't return values.]
curl -XPOST -d 'Metadata="123"' http://uri.uri [Invisible in Fiddler. Returns values]

我的c#http请求与curl调用相同。我可以在Fiddler中看到它,这意味着它正在使用localhost作为代理,并且没有收到任何值。

1 个答案:

答案 0 :(得分:1)

HttpClient使用Windows“ Internet选项”中的默认代理配置。因此,如果您在Fiddler中看到来自应用程序的流量,则意味着默认代理配置指向Fiddler。

"Act as System Proxy on startup" is an option in Fiddler起,这并不奇怪:它将在Fiddler启动时将Windows默认代理更改为自身,而在Fiddler关闭时将其更改为原来。

要验证Fiddler中的选项,请打开Fiddler的选项,转到“连接”选项卡,然后查看是否已选择“在启动时充当系统代理”。