Google 应用制作工具:使应用能够进行 Admin SDK API 调用
Google App Maker: Enable app to make Admin SDK API calls
我创建了一个 google 应用程序制作器应用程序并添加了一个服务器脚本以访问 Admin SDK API。当我预览我的应用程序时,我看到以下错误 "GoogleJsonResponseException: Not Authorized to access this resource/api at listAllGroups"。我的理解是 google app maker 使用当前用户的帐户访问资源,这意味着我需要授予自己 API 访问 Admin SDK 的权限。我怎样才能做到这一点?顺便说一句,我以超级管理员身份登录
这是我正在使用的服务器脚本:
function listAllGroups() {
var pageToken;
var page;
do {
page = AdminDirectory.Groups.list({
domain: 'test.domain.com',
maxResults: 100,
pageToken: pageToken
});
var groups = page.groups;
if (groups) {
for (var i = 0; i < groups.length; i++) {
var group = groups[i];
Logger.log('%s (%s)', group.name, group.email);
}
} else {
Logger.log('No groups found.');
}
pageToken = page.nextPageToken;
} while (pageToken);
}
如果您使用的是超级管理员帐户,可能是 domain 参数给您带来了问题。试试这个:
function listAllGroups() {
var pageToken;
var page;
do {
page = AdminDirectory.Groups.list({
customer: 'my_customer',
maxResults: 100,
pageToken: pageToken
});
var groups = page.groups;
if (groups) {
for (var i = 0; i < groups.length; i++) {
var group = groups[i];
Logger.log('%s (%s)', group.name, group.email);
}
} else {
Logger.log('No groups found.');
}
pageToken = page.nextPageToken;
} while (pageToken);
}
请注意,这里我们使用的参数 customer 的值为 my_customer 而不是参数 域。如果这些不能解决问题,请确保该应用程序以用户身份而非开发人员身份运行。如果它以开发者身份运行,请确保开发者是超级管理员帐户。希望对您有所帮助!
我创建了一个 google 应用程序制作器应用程序并添加了一个服务器脚本以访问 Admin SDK API。当我预览我的应用程序时,我看到以下错误 "GoogleJsonResponseException: Not Authorized to access this resource/api at listAllGroups"。我的理解是 google app maker 使用当前用户的帐户访问资源,这意味着我需要授予自己 API 访问 Admin SDK 的权限。我怎样才能做到这一点?顺便说一句,我以超级管理员身份登录
这是我正在使用的服务器脚本:
function listAllGroups() {
var pageToken;
var page;
do {
page = AdminDirectory.Groups.list({
domain: 'test.domain.com',
maxResults: 100,
pageToken: pageToken
});
var groups = page.groups;
if (groups) {
for (var i = 0; i < groups.length; i++) {
var group = groups[i];
Logger.log('%s (%s)', group.name, group.email);
}
} else {
Logger.log('No groups found.');
}
pageToken = page.nextPageToken;
} while (pageToken);
}
如果您使用的是超级管理员帐户,可能是 domain 参数给您带来了问题。试试这个:
function listAllGroups() {
var pageToken;
var page;
do {
page = AdminDirectory.Groups.list({
customer: 'my_customer',
maxResults: 100,
pageToken: pageToken
});
var groups = page.groups;
if (groups) {
for (var i = 0; i < groups.length; i++) {
var group = groups[i];
Logger.log('%s (%s)', group.name, group.email);
}
} else {
Logger.log('No groups found.');
}
pageToken = page.nextPageToken;
} while (pageToken);
}
请注意,这里我们使用的参数 customer 的值为 my_customer 而不是参数 域。如果这些不能解决问题,请确保该应用程序以用户身份而非开发人员身份运行。如果它以开发者身份运行,请确保开发者是超级管理员帐户。希望对您有所帮助!