110,534
社区成员
发帖
与我相关
我的任务
分享
IPHostEntry IPHost = Dns.Resolve(url);
EndPoint ep = new IPEndPoint(IPHost.AddressList[0], 80);
Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
sock.Connect(ep);
if (sock.Connected)
{
isConnect = true;
}
/// <summary>
/// 判断当前网址是否连通
/// </summary>
/// <param name="url">网址</param>
/// <returns></returns>
public bool isPing(string url)
{
bool isConnect = true ;
try
{
WebClient client = new WebClient();
byte[] buffer = client.DownloadData(url);
string page = Encoding.Default.GetString(buffer);
string encode = commondText.getHeaderInfo(commondText.getHeader(page), "charset");
if (encode.Equals("utf-8"))
{
page = Encoding.UTF8.GetString(buffer);
}
//如果获取的内容文字很少,或者没有连接地址的话,说明是无效的
if (page.Length <= 120 || page.ToLower().IndexOf("<a href") == -1)
{
isConnect = false;
}
}
catch (Exception)
{
isConnect = false;
}
return isConnect;
}