很多公司都使用代理上网,这样当然是有原因的,因为要对公司员工访问网络进行监视,但是这很令开发人员郁闷,因为在程序中访问网络资源是需要自己设置代理认证的,我们公司就是这样的。幸亏不要紧,因为C#提供了针对访问网络资源代理的设置,今天来讲解WebClient代理问题。下面是一个实现的例子:
private static string GetHtml(string url, EncodingType type, bool isByProxy)
{
WebClient webClient = new WebClient();//创建WebClient实例myWebClient
if (isByProxy)
{
//创建代理服务器设置对象的实例
System.Net.WebProxy wp = new System.Net.WebProxy("ISASRV:80");//代理名称很端口,要根据你的情况来设置
//代理服务器需要验证
wp.BypassProxyOnLocal = false;
//用户名密码,要根据你的情况来设置
wp.Credentials = new NetworkCredential("UserName", "PWD", "hold");
//将代理服务器设置对象赋予全局设定
GlobalProxySelection.Select = wp;
//获取或设置用于对向Internet 资源的请求进行身份验证的网络凭据。
webClient.Credentials = CredentialCache.DefaultCredentials;
}
byte[] pagedata = webClient.DownloadData(url);//先获取二进制的资源
}
内容纲要