我已经为Java下载了admin-cmd-line-sample,并且使用oAuth工作正常,我可以创建用户和组。我在安全设置中启用了Admin SDK以及API使用。
但我必须使用旧的ClientLogin机制来创建用户和组。
当要求授权令牌时,客户端登录会返回一个值,我最终在http请求头中设置并调用远程服务。
但是我得到了
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceededUnreg",
"message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup.",
"extendedHelp": "https://code.google.com/apis/console"
}
],
"code": 403,
"message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup."
}
}
我正在使用客户端登录,如下所示。
ClientLogin authenticator = new ClientLogin();
authenticator.authTokenType = "apps";
authenticator.username = "foo@foo.com";
authenticator.password = "bar123#";
authenticator.transport = GoogleNetHttpTransport.newTrustedTransport();
final Response response = authenticator.authenticate();
Directory client = new Directory.Builder(GoogleApacheHttpTransport.newTrustedTransport(), JSON_FACTORY, new HttpRequestInitializer() {
@Override
public void initialize(HttpRequest httpRequest) throws IOException {
httpRequest.getHeaders().setAuthorization(response.getAuthorizationHeaderValue());
}
}).setApplicationName(APPLICATION_NAME).build();
客户端实例上方,而不是我用来创建用户或组。
Group group = new Group();
group.setEmail("foo@foo.com");
group.setName("bar group");
group.setDescription("bar group");
client.groups().insert(group).execute();
如果我在控制台上打印 response.getAuthorizationHeaderValue() ,我 可以看到长字符串值。
我正在使用google-api-services-admin的版本directory_v1-rev16-1.16.0-rc
如果有人可以指出我出错的地方,我会非常感激。