2013-02-06 4 views
-1

여기 내 코드로 HttpWebRequest를 사용하고 HttpWebResponse로부터 응답을받는 URL을 요청합니다. 그러나 httpwebresponse 객체는 내부 서버 오류라는 예외를 throw합니다!내부 서버 오류 받기

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

클라이언트가 쿠키를 지원하지 않는 경우 사이트가 손상된 것 같습니다. CookieContainer를 설정하여 클라이언트의 쿠키 지원을 활성화 할 수 있습니다.

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 키는 무엇입니까 ?? –