日期:2014-05-17  浏览次数:21132 次

C# 如何判断代理IP和端口是否可用
我想要做一个对代理IP进行检测,如果成功就使用代理IP,不成功就跳到下个代理iP的检测。

------解决方案--------------------

        private bool CheckProxy(string Url, string ProxyAddr, string ProxyUser, string ProxyPassWord, string ProxyDomain)
        {
            try
            {
                WebProxy CurrentWebProxy = new WebProxy(ProxyAddr, true);
                if (ProxyPassWord.Trim().Length > 0 && ProxyUser.Trim().Length > 0)
                    CurrentWebProxy.Credentials = new System.Net.NetworkCredential(ProxyUser, ProxyPassWord, ProxyDomain);
                else
                    CurrentWebProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
                WebRequest sr = WebRequest.Create(Url);
                sr.Proxy = CurrentWebProxy;
                sr.GetResponse();
                return true;
            }
            catch (Exception ee)
            {
                LogFile("代理服务器状态检测: 代理地址:" + ProxyAddr + "  用户名:" + ProxyUser + "  密码:" + ProxyPassWord + "  域:" + ProxyDomain + "  异常信息:" + ee.Message);