認証には EMAIL Settings API と ClientLogin を使用しています。EMAIL 設定 API はまだ GDATA ライブラリにあります。GDATA ライブラリを使用して OAuth 2.0 を使い始めることはできますか? (appsforyourdomain クライアント ライブラリを使用して EMAIL 設定 API を使用しています) または、 ClientLogin を引き続き使用できますか? 投稿によると、ClientLogin は 2015 年 4 月 20 日までに廃止されるようです。正しいアプローチを教えてください。 GDATA API : 1.46.0. EMAIL 設定 API は、ユーザーの Web クリップを無効にするためだけに使用されます。
1 に答える
0
GDATA API 1.46.0 を使用していましたが、OAuth 2.0 をサポートしていません。1.47.0 バージョンでサポートが追加されました。以下のリリースノートを参照してください。新しいライブラリを使用した後、OAuth 2.0 を実装することができました。appsforyourdomain クライアント ライブラリ内で GmailSettingsService クラスを使用し、ClientLogin フローをコメント アウトして、OAuth2.0 の新しいフローを追加しました。GoogleCredential オブジェクトを使用して、OAuth2.0 資格情報オブジェクトを作成します。
// Client Login
// this.setUserCredentials(username + "@" + domain, password);
// OAuth 2.0
this.setOAuth2Credentials(initCredential());
public static GoogleCredential initCredential() throws GeneralSecurityException, IOException {
httpTransport = GoogleNetHttpTransport.newTrustedTransport();
List<String> scopes = Arrays.asList("https://apps-apis.google.com/a/feeds/emailsettings/2.0/");
credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
.setServiceAccountScopes(scopes)
.setServiceAccountPrivateKeyFromP12File(new File(SERVICE_ACCOUNT_PKCS12_FILE_PATH))
.setServiceAccountUser(DOMAIN_ADMIN_API_USER)
.build();
return credential;
}
v1.47.0に関する注意事項
o Google OAuth Client for Java ( http://code.google.com/p/google-oauth-java-client/ ) を利用する OAuth 2.0 サポートを追加します。
于 2015-02-26T19:10:04.407 に答える