2011-12-07 4 views
0

글쎄, 나는 여기에 묻지 않고 이것을 처리 할 수 ​​있었으면 좋겠다. ( 아이디어는 꽤 간단하다.이 링크는 http://cetatenie.just.ro/이고 링크는 중요하다. .GET from GAE Java

HttpClient httpClient = new DefaultHttpClient();  
HttpGet httpGet = new HttpGet("http://cetatenie.just.ro/"); 
HttpResponse response = httpClient.execute(httpGet); 

그리고 : 그건, 로컬로 지금

내가 메인 클래스에서 같은 것을 그것을 할 경우 - 다른 사람

당신은 GAE에서에 HTTP GET을 수행 할! 응답은 모두 괜찮아요, 구문 분석 이제, 나는 똑같은 (알 대부분 GAE에서) - 이클립스 GAE 플러그인의 도움을 받아 로컬에서 (이클립스에서 -> 실행 As -> 웹 애플리케이션).

FetchOptions fetchOptions = FetchOptions.Builder.withDeadline(50000); 
HTTPRequest request = new HTTPRequest(new URL("http://cetatenie.just.ro/"), HTTPMethod.GET, fetchOptions); 
System.out.println("ULR-->" + request.getURL());  
URLFetchService service = URLFetchServiceFactory.getURLFetchService(); 
HTTPResponse response = service.fetch(request); 
System.out.println("RESPONSE_CODE-->" + response.getResponseCode()); 
String responseAsString = new String(response.getContent()); 
System.out.println("RESPONSE_AS_STRING-->" + responseAsString); 

나는 항상 Http 500 오류 코드를받습니다. 이 문제는 서버 문제를 나타냅니다.하지만 내 독립 실행 형 응용 프로그램에서 어떻게 작동합니까?

GAE는 뭔가 비린내가 있습니까?

감사합니다. 유진.

+0

당신이 [URL 요청을 만드는 방법에 대한 문서]를 읽을나요 (http://code.google.com/appengine/docs/java/urlfetch/overview.html)? –

+0

예 (이상한, 나는 알고있다). 내가 이렇게해도 : URL url = 새로운 URL ("http://cetatenie.just.ro/"); \t BufferedReader reader = 새 BufferedReader (새 InputStreamReader (url.openStream())); 문자열 줄; StringBuilder 응답 = 새 StringBuilder (""); while ((line = reader.readLine())! = null) { response.append (line); } reader.close(); \t System.out.println ("RESPONSE ->"+ response); 결과는 같을 것입니다. – Eugene

+0

브라우저에서 해당 URL로 이동하면 500을 반환합니다. –

답변

0

젠장! 이것은 실제로 쉬운 일이었습니다 - 요청을 보낼 때 두 개의 헤더가 누락되었습니다 (GAE는 텔넷처럼 보입니다 - 지정하지 않으면 헤더를 보내지 않음). 어쨌든 여기에 내가 추가 한 것입니다 :

URL url = new URL("http://cetatenie.just.ro"); 
URLConnection urlConnection = url.openConnection(); 
urlConnection.setRequestProperty("Host", "cetatenie.just.ro"); 
urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1");