1. 程式人生 > >C# 檢測網路資源是否有效

C# 檢測網路資源是否有效

下載資料時,需要知道某個Web資源是否有效,其基本原理就是利用HTTP的HEAD方法,根據標頭返回的狀態碼,就可以確定資源是否有效了。

基本方法:

        /// <summary>
        /// 檢測網路資源是否有效
        /// </summary>
        /// <param name="uri">要檢測的網路資源URI</param>
        /// <returns>網路資源是否有效</returns>
        public static bool IsWebResourcesAvailable(string uri)
        {
            try
            {
                HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(uri);
                // HTTP 的HEAD方法
                webRequest.Method = "HEAD";
                webRequest.Timeout = 3000;
                HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
                // 獲取HEAD返回的狀態碼
                return ( webResponse.StatusCode == HttpStatusCode.OK );
            }
            catch (WebException ex)
            {
                return false;
            }
        }