Oauth 电子邮件设置API-客户端登录

Oauth 电子邮件设置API-客户端登录,oauth,google-oauth,google-oauth-java-client,google-email-settings-api,Oauth,Google Oauth,Google Oauth Java Client,Google Email Settings Api,我们正在使用电子邮件设置API和ClientLogin进行身份验证。电子邮件设置API仍在GDATA库中。使用GDATA库我们可以开始使用OAuth2.0吗?(我们正在使用appsforyourdomain客户端库来使用电子邮件设置API)或者我们可以继续使用ClientLogin吗?根据帖子显示,ClientLogin将于2015年4月20日退休。请指导我正确的方法。 GDataAPI:1.46.0。电子邮件设置API仅用于为用户禁用webclips。我们使用的是GDATA API 1.46

我们正在使用电子邮件设置API和ClientLogin进行身份验证。电子邮件设置API仍在GDATA库中。使用GDATA库我们可以开始使用OAuth2.0吗?(我们正在使用appsforyourdomain客户端库来使用电子邮件设置API)或者我们可以继续使用ClientLogin吗?根据帖子显示,ClientLogin将于2015年4月20日退休。请指导我正确的方法。
GDataAPI:1.46.0。电子邮件设置API仅用于为用户禁用webclips。

我们使用的是GDATA API 1.46.0,它不支持OAuth 2.0。在1.47.0版本中添加了支持。请参阅下面的发行说明。在使用新的库之后,我能够实现OAuth2.0。 在appsforyourdomain客户端库中使用了Gmail设置服务类,注释掉了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;
  }
//客户端登录
//此.setUserCredentials(用户名+“@”+域,密码);
//OAuth2.0
this.setOAuth2Credentials(initCredential());
公共静态GoogleCredential initCredential()引发GeneralSecurityException,IOException{
httpTransport=GoogleNetHttpTransport.newTrustedTransport();
列表范围=数组。asList(“https://apps-apis.google.com/a/feeds/emailsettings/2.0/");
凭证=新的GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_工厂)
.setServiceAccountId(服务\帐户\电子邮件)
.setServiceAccountScopes(范围)
.SetServiceAccountPrivateKeyFromp12文件(新文件(服务\帐户\ PKCS12\文件\路径))
.setServiceAccountUser(域\管理员\ API \用户)
.build();
返回凭证;
}
v1.47.0的注释
o利用Google OAuth Client for Java(),添加OAuth 2.0支持。

尽管电子邮件设置API位于GDATA库中,但您可以使用OAuth 2.0。例如,contacts API在GDATA上,但它仍然支持oauth 2.0Thanks SGC。您是否有任何示例或链接可以帮助我实现相同的谷歌电子邮件设置API。我最近为用户管理的管理目录API提供了基于Oauth 2.0的服务帐户。@bummi在上面的回答中,DOMAIN\u ADMIN\u API\u user的值应该是多少?例如:admin@appcreator.com是创建应用程序的用户,并且admin@appuser.com是正在使用应用程序的用户。