查询404文件
前幾天編寫了如何判斷一遠程文件(圖片等)是否存在的一程序,而今天又遇類似一問題,如何檢測一網址是否出現404錯誤,信息量一大,一條條刪太麻煩了,下面用程序來解決這個問題。
我用代碼試了一下,發現HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();這句出錯,則表示這一網址是有問題的。這時我就想到,用try.....catch來解決這個方法。
具體判斷404錯誤的函數如下:?程序代碼static bool isUrl404(string sURL)
{
????bool bExists = true;
????try
????{
????????//用于把一請求的響應將會被放到一個WebRequest對象里
????????HttpWebRequest request = (HttpWebRequest)WebRequest.Create(sURL);
????????request.Method = "HEAD";
????????request.AllowAutoRedirect = false;??//設置請求是否應跟隨重定向響應
????????//然后這個GetResponse對象被用來建立一個流來取出XML的值
????????HttpWebResponse response = (HttpWebResponse)request.GetResponse();
????????//關閉對象
????????response.Close();
????????request.Abort();
????}
????catch (WebException ex)
????{
????????HttpWebResponse response = (HttpWebResponse)ex.Response;
????????if (response != null)??//排除對象為空的錯誤
????????{
????????????if (response.StatusCode == HttpStatusCode.NotFound)??//判斷是否是404錯誤
????????????????bExists = false;
????????}
????}
????return bExists;
}
我用代碼試了一下,發現HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();這句出錯,則表示這一網址是有問題的。這時我就想到,用try.....catch來解決這個方法。
具體判斷404錯誤的函數如下:?程序代碼static bool isUrl404(string sURL)
{
????bool bExists = true;
????try
????{
????????//用于把一請求的響應將會被放到一個WebRequest對象里
????????HttpWebRequest request = (HttpWebRequest)WebRequest.Create(sURL);
????????request.Method = "HEAD";
????????request.AllowAutoRedirect = false;??//設置請求是否應跟隨重定向響應
????????//然后這個GetResponse對象被用來建立一個流來取出XML的值
????????HttpWebResponse response = (HttpWebResponse)request.GetResponse();
????????//關閉對象
????????response.Close();
????????request.Abort();
????}
????catch (WebException ex)
????{
????????HttpWebResponse response = (HttpWebResponse)ex.Response;
????????if (response != null)??//排除對象為空的錯誤
????????{
????????????if (response.StatusCode == HttpStatusCode.NotFound)??//判斷是否是404錯誤
????????????????bExists = false;
????????}
????}
????return bExists;
}
轉載于:https://www.cnblogs.com/guozhe/p/3414369.html
總結
- 上一篇: Spring初学(一)
- 下一篇: win7乱码 字符集解决方案