首页 / C# / 如何在c#中验证URL(错误404)
如何在c#中验证URL(错误404)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何在c#中验证URL(错误404),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2076字,纯文字阅读大概需要3分钟。
内容图文
![如何在c#中验证URL(错误404)](/upload/InfoBanner/zyjiaocheng/790/b55b4d5abe494172883e02ca88b28d7a.jpg)
我需要编写一个工具,用C#报告损坏的URL.如果用户在浏览器中看到404错误,则URL应仅报告已损坏.我相信可能有一些技巧来处理进行URL重写的Web服务器.这就是我所拥有的.正如您所看到的,只有一些URL验证不正确.
string url = "";
// TEST CASES
//url = "http://newsroom.lds.org/ldsnewsroom/eng/news-releases-stories/local-churches-teach-how-to-plan-for-disasters"; //Prints "BROKEN", although this is getting re-written to good url below.
//url = "http://beta-newsroom.lds.org/article/local-churches-teach-how-to-plan-for-disasters"; // Prints "GOOD"
//url = "http://"; //Prints "BROKEN"
//url = "google.com"; //Prints "BROKEN" althought this should be good.
//url = "www.google.com"; //Prints "BROKEN" althought this should be good.
//url = "http://www.google.com"; //Prints "GOOD"
try
{
if (url != "")
{
WebRequest Irequest = WebRequest.Create(url);
WebResponse Iresponse = Irequest.GetResponse();
if (Iresponse != null)
{
_txbl.Text = "GOOD";
}
}
}
catch (Exception ex)
{
_txbl.Text = "BROKEN";
}
解决方法:
首先,Irequest和Iresponse不应该这样命名.它们应该只是webRequest和webResponse,甚至只是请求和响应.大写“I”前缀通常仅用于接口命名,而不用于实例变量.
要进行URL有效性检查,请使用UriBuilder获取Uri.然后你应该使用HttpWebRequest和HttpWebResponse,这样你就可以检查强类型的状态代码响应.最后,你应该对被破坏的内容有所了解.
这里是我介绍的一些其他.NET内容的链接:
> string.IsNullOrEmpty()
>
HttpWebRequest
>
HttpWebResponse
>
HttpStatusCode
>
Uri
>
UriBuilder
>
string.Format()
样品:
try
{
if (!string.IsNullOrEmpty(url))
{
UriBuilder uriBuilder = new UriBuilder(url);
HttpWebRequest request = HttpWebRequest.Create(uriBuilder.Uri);
HttpWebResponse response = request.GetResponse();
if (response.StatusCode == HttpStatusCode.NotFound)
{
_txbl.Text = "Broken - 404 Not Found";
}
if (response.StatusCode == HttpStatusCode.OK)
{
_txbl.Text = "URL appears to be good.";
}
else //There are a lot of other status codes you could check for...
{
_txbl.Text = string.Format("URL might be ok. Status: {0}.",
response.StatusCode.ToString());
}
}
}
catch (Exception ex)
{
_txbl.Text = string.Format("Broken- Other error: {0}", ex.Message);
}
内容总结
以上是互联网集市为您收集整理的如何在c#中验证URL(错误404)全部内容,希望文章能够帮你解决如何在c#中验证URL(错误404)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。