2010-03-29 9 views
3

Oauth가 Google 데이터 API에서 사용 된 웹 애플리케이션 예를 아는 사람이 있습니까?자바를 사용하는 Google Data API의 OAuth

+1

아는 바 없지만 Google 데이터 API (http://code.google.com/apis/gdata/articles/oauth.html)로 OAuth 용 API를 항상 확인할 수 있습니다. –

+0

예를 확인했는데, 어떻게 든 그것은 불완전하다. 요청 토큰을 인증 할 때 작동하지 않습니다. 사용자가 액세스 권한을 부여하기로 결정한 경우 어떻게 프로그램에 참여합니까? 그것에 관한 것은 없습니다. – yogsma

+0

그래, 다음이 시도 (http://code.google.com/apis/gdata/docs/auth/oauth.html) –

답변

1

제가 이해 한 바로는 (내가 틀렸다면 수정하십시오). 요청 토큰을 다시 얻으려면 oauth_callbackoauth_token이 추가되는 절대 경로로 설정하고 oath_callback에 추가합니다. (http://code.google.com/apis/gdata/docs/auth/oauth.html)

Google이 귀하의 응용 프로그램으로 다시 리디렉션의의 oauth_token는 "oauth_callback_url"에 추가 A와 URL 콜백 URL에서 토큰을 추출에서

검색어 매개 변수 응용 프로그램은 URL 쿼리 매개 변수에서 토큰 값을 추출하고 oauth 매개 변수를 다시 설정해야합니다.

Google OAuth 도우미를 사용하는 경우이 예를 시도해 볼 수 있습니다.

import com.google.gdata.client.docs.*; 
import com.google.gdata.client.authn.oauth.*; 

String CONSUMER_KEY = "example.com"; 
String CONSUMER_SECRET = "abc123doremi"; 

GoogleOAuthParameters oauthParameters = new GoogleOAuthParameters(); 
oauthParameters.setOAuthConsumerKey(CONSUMER_KEY); 
oauthParameters.setOAuthConsumerSecret(CONSUMER_SECRET); 
oauthParameters.setScope("https://docs.google.com/feeds/"); 
oauthParameters.setOAuthCallback("http://www.example.com/UpgradeToken.jsp"); 

GoogleOAuthHelper oauthHelper = new GoogleOAuthHelper(new OAuthHmacSha1Signer()); 
oauthHelper.getUnauthorizedRequestToken(oauthParameters); 

이 예제는 JSP 내부에 작성된 것으로 보입니다. 프레임 워크를 사용하여 사용할 수 있습니다.

oauthParameters.setOAuthCallback()은 Google에서 토큰 반환을 위해 콜백 URL 경로를 추가 한 곳입니다.

+0

그게 내가 정확히하려는거야. 내 진짜 문제는 사용자가 액세스 권한을 부여하거나 거부 할 때 발생합니다. 그 사건을 어떻게 잡아야합니까? callback_url에서 oauth_token을 쿼리해야하지만 사용자가 액세스 권한을 부여한 경우에만 해당됩니다. – yogsma

+0

사용자가 '액세스를 허용하거나 거부 할 때'를 의미합니까? –

+0

잘 .. 승인 된 URL을 받으면 사용자가 로그인 세부 정보를 제공하는 URL로 사용자를 리디렉션하고 Google 서비스의 데이터에 대한 액세스 권한을 부여하거나 거부 할 수있는 화면을 가져옵니다. – yogsma