2013-02-06 76 views
-1

這裏是我的代碼我在哪裏使用HttpWebRequest請求URL並從HttpWebResponse獲得響應。但是httpwebresponse對象會引發內部服務器錯誤!獲取內部服務器錯誤

url="http://www.google.com/" 

Uri urlCheck = new Uri(url); 
request = (HttpWebRequest)WebRequest.Create(url); 
request.Timeout = 5000000; 
response = (HttpWebResponse)request.GetResponse(); //Here Getting The Exception.. 
receiveStream = response.GetResponseStream(); 
Encoding encode = System.Text.Encoding.GetEncoding("utf-8"); 
strmRead = new StreamReader(receiveStream, encode); 
result = strmRead.ReadToEnd(); 
+0

嘗試調試服務。該服務拋出異常,客戶端代碼可能沒問題。 –

+0

@Emo:謝謝你,先生,但哪個服務,你可以給任何例子......或如何調試服務? –

回答

0

如果客戶端不支持cookie,看起來網站崩潰。因此,您可以通過設置CookieContainer啓用對客戶端Cookie的支持:

using System; 
using System.IO; 
using System.Net; 

class Program 
{ 
    static void Main() 
    { 
     var url = "http://links.casemakerlegal.com/states/MS/books/Case_Law/results?search[Cite]=77%20So.3d%201094"; 
     var request = (HttpWebRequest)WebRequest.Create(url); 
     request.CookieContainer = new CookieContainer(); 
     using (var response = request.GetResponse()) 
     using (var stream = response.GetResponseStream()) 
     using (var reader = new StreamReader(stream)) 
     { 
      string result = reader.ReadToEnd(); 
      Console.WriteLine(result); 
     } 
    } 
} 
+0

非常感謝...非常...它工作.... :-) –

0

「內部服務器錯誤」的意思就是說,您正在調用的服務器上發生內部錯誤。

這可能是服務器上的暫時問題,與您無關,也可能是服務器不喜歡您傳遞給它的數據。請檢查以下內容:

  • 77%20So.3d%201094是否有效的搜索值?
  • 您是否應該隨請求一起發送API密鑰?
  • 你應該認證自己,例如使用HTTP用戶名/密碼摘要或X509證書?
+0

其實,先生,這個鏈接正常工作,當我手動瀏覽它在Mozilla FireFox .....什麼是API密鑰? –