2011-05-13 42 views
0

鑑於以下原因,爲什麼網站不是有效?我收到以下錯誤消息。爲什麼不會通過這個網絡請求通過有效網站

try { 
    HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(@"http://wrtire1.tru-m.com/"); 
    //2 websites that do this 
    // http://wrtire1.tru-m.com/ 
    // http://acuraofaugusta.mobi/index.htm 
    webReq.Method = "HEAD";  
    HttpWebResponse webRes = (HttpWebResponse)webReq.GetResponse(); 

    if (webRes.StatusCode == HttpStatusCode.OK) 
    Label1.Text = true.ToString(); 
} catch (Exception e) { 
    Label1.Text = "The remote server returned an error: (403) Forbidden. "; 
    // or I got this: The remote server returned an error: (500) Internal Server Error. 
} 

我收到此錯誤信息

The remote server returned an error: (500) Internal Server Error.

+7

嗯,怎麼樣的錯誤信息?這會花5秒鐘做'Label1.Text = e.Message' – mellamokb 2011-05-13 20:06:43

+5

@mellamokb'e.ToString()'會更好,因爲它也會包含堆棧跟蹤。 – Oded 2011-05-13 20:08:59

+3

爲什麼要捕捉一個異常,如果你只是忽略它呢?關於錯誤消息有趣的是,它們傾向於包含有用的信息。 – David 2011-05-13 20:09:49

回答

0

發生這種情況,因爲Web服務器已經在你的HTTP請求的用戶代理一看而拒絕訪問,因爲它知道你的應用程序是不是合法網頁瀏覽器。

很多網站都會這樣做,以減少漫遊器和網絡爬蟲的流量。

Here's more information on the concept