我有一个通过Web代理调用某些服务的应用程序.
我想显示有关用于请求的代理的信息.
我怎样才能做到这一点?
我的代码如下:
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);