Google应用脚本,用于检查域中是否存在电子邮件

时间:2019-09-12 08:45:21

标签: google-apps-script gsuite

我们有Gsuite用于教育,电子邮件地址是由一个单独的部门创建的,并且我们的部门向已注册的学生发放门票,有时学生可以将他们的朋友和伪造的电子邮件带到我们学校的域中,获取电子邮件需要3个多小时经过注册部门的验证,我们正在考虑拥有一个Google脚本网络应用,可以在其中输入电子邮件地址,它会告诉我们它是真实的还是假的。仅应在我们的域上检查电子邮件。 我们已经检查了User Class,它只能获取当前用户的电子邮件地址,Session.getActiveUser().getEmail() 有功能或类可以帮助我们实现这一目标吗?

1 个答案:

答案 0 :(得分:1)

是的,可以通过Admin directory API

该文档提供的代码示例完全可以满足您的要求-列出您域中的所有用户:

function listAllUsers() {
  var pageToken;
  var page;
  do {
    page = AdminDirectory.Users.list({
      domain: 'example.com',
      orderBy: 'givenName',
      maxResults: 100,
      pageToken: pageToken
    });
    var users = page.users;
    if (users) {
      for (var i = 0; i < users.length; i++) {
        var user = users[i];
        Logger.log('%s (%s)', user.name.fullName, user.primaryEmail);
      }
    } else {
      Logger.log('No users found.');
    }
    pageToken = page.nextPageToken;
  } while (pageToken);
}

通过使用域名替换'example.com'来修改代码,如果要列出所有学生,请删除行maxResults: 100,

  

请记住,Admin directory APIAdvanced Google Service,在脚本编辑器UI中需要enabled   通过Resources->Advanced Google Services...