c# - ASP.NET 应用程序如何检查用于请求的代理?

标签 c# asp.net webrequest

我有一个通过网络代理调用某些服务的应用程序。 我想显示有关用于请求的代理的信息。 我该怎么做?

我的代码如下:

WebRequest request = WebRequest.Create(url);
request.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
log(response.StatusDescription);
// HERE I'd like something like log(request.getProxy()))
reponse.Close();

有什么想法吗?谢谢。

最佳答案

可以为整个应用程序配置代理,并且可以为某些 WebRequest 覆盖代理。 对于应用程序,它可以通过此代码获得(看起来是你的情况):

IWebProxy appProxy = WebRequest.DefaultWebProxy;

对于某个WebRequest:

IWebProxy requestProxy = request.Proxy;

然后您可以记录来自IWebProxy 的信息:

string proxyAddress = appProxy.GetProxy(new Uri(url)).ToString();
Console.WriteLine(proxyaddress);

关于c# - ASP.NET 应用程序如何检查用于请求的代理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52755734/

相关文章:

c# - 在 MongoDB 中保存 POCO 时忽略一个属性,但在序列化为 JSON 时不忽略它

ASP.net MVC 4 全局授权过滤器强制登录 AllowAnonymous 操作

javascript - 从 URL 获取值(value)

http - 我可以使用 glib 发出一些可移植的 http GET 请求吗?如何?

javascript - 将文本上传到 javascript 中的 asp.net 通用处理程序

c# - C# 中的表达式始终为真

c# - 在 Visual Studios 中更快地处理图形?

c# - 无法发送给收件人 : c# exception

c# HttpWebRequest POST'ing 失败

c# - 将二进制数转换为 ascii 字符