如何获得有效的网址

时间:2012-01-19 06:22:56

标签: c# asp.net url-rewriting

  

可能重复:
  C# How can I check if a URL exists/is valid?

使用C#vs2010。

想检查网址是否有效。假设我有三个网址,如www.google.com,www.ggg.com,www.gef.com .

当我浏览www.google.com =如果页面可用,那么我想要回复,此页面有效且网址有效。

当我在www.ggg.com或www.gef.com上浏览时=如果页面不可用,那么我想要一个回复,此页面无效且网址无效。

有可能吗?有什么想法或建议可以解决这个问题吗? 在此先感谢,如果有任何疑问请询问。

6 个答案:

答案 0 :(得分:2)

.NET: Check URL's response status code?

第一个回答将返回“url status”。 然后使用if condition ==“400”等等检查返回状态。

一个例子;


List< string > urls = new List< string >
urls.add("www.google.com");
urls.add("www.ggg.com");

foreach(var url in urls) { //cast string to HttpResponse will need here... if( GetHeaders(url).ToString() == "400" ) MessageBox.Show(url + " status code is 400"); }

像这样......

答案 1 :(得分:1)

我认为同样的问题已经回答了

检查以下链接

C# How can I check if a URL exists/is valid?

答案 2 :(得分:0)

查看webresponse:

http://msdn.microsoft.com/en-us/library/system.net.webresponse.aspx

我认为你可以用这种反应做点什么。

答案 3 :(得分:0)

您可以使用Tegular Expression验证网址;请看下面的链接: http://madskristensen.net/post/Validate-a-URL-using-regular-expressions.aspx http://www.webpronews.com/validating-a-url-with-regular-expressions-2006-10

答案 4 :(得分:0)

您可以使用webrequestwebresponse

来完成此操作

看看这个SO question

答案 5 :(得分:0)

请查看WebClientUri课程。

使用WebClient类(来自System.Net命名空间),您可以检查Url引用的资源是否可用:

bool resourceAvailable = false;

WebClient webClient = new WebClient();

try
{
    string pageContent = webClient.DownloadString("http://www.someResource.com");
    resourceAvailable = !String.IsNullOrEmpty(pageContent);
}
catch (WebException) { }

// then you can perform actions depending on value of resourceAvailable flag (variable)

使用Uri类,您可以检查网址是否格式正确:

Uri.IsWellFormedUriString("http://www.someAddress.com", UriKind.Absolute); // will return true
Uri.IsWellFormedUriString("not an uri", UriKind.Absolute); // will return false

您还可以使用UriBuilder课程完成网址格式化。