2011-08-08 2 views
3

내 앱은 SSL을 통해 다른 웹 서비스를 쿼리합니다. 아파치 HttpClient를 사용하여 내 서버에서 다른 웹 서비스에 대한 https POST 호출을 작성했습니다.App Engine에서 HTTPS 호출을 만드는 방법

java.lang.NoClassDefFoundError: javax.net.ssl.KeyManagerFactory is a restricted class. 
Please see the Google App Engine developer's guide for more details. 

내 질문은, 어떻게 만들 수있다 HTTPS 구글 앱 엔진을 호출 : 나는 응용 프로그램 엔진에 내 응용 프로그램을 배포 할 때 나는 다음과 같은 오류가있어?

답변

4

Apache HttpClient는 App Engine의 out-of-the-box을 지원하지 않습니다. UrlFetch을 래핑하는 사용자 정의 ConnectionManager를 작성해야합니다. This post은 꽤 잘 설명하고 샘플 코드를 제공합니다. 이전에 App Engine에서이 코드를 사용했습니다.

1

URL 클래스를 사용하여 app-engine에서 HTTPS 연결을 만들 수 있습니다. 이 같은

뭔가 -

URL url = new URL(yourHttpsURL); 
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream())); 
StringBuilder responseBody = new StringBuilder(); 
String line; 

while ((line = reader.readLine()) != null) 
    responseBody.append(line); 

reader.close(); 

앱 엔진도 낮은 수준의 API에 FetchOptions 클래스를 사용하여 호스트 유효성 검사를 지원합니다.

관련 문제