首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >google Session.getActiveUser().getEmail()不工作

google Session.getActiveUser().getEmail()不工作
EN

Stack Overflow用户
提问于 2013-03-27 04:12:11
回答 5查看 16.5K关注 0票数 3

我已经开发了一个带有google脚本的web应用程序,并在我的gs中编写了这个程序。

代码语言:javascript
运行
复制
var email = Session.getActiveUser().getEmail();
Logger.log(email);
// then do something to render the Email address on the page

发布脚本后,我使用另一个帐户登录并执行脚本。

然后页面显示如下:

这个应用程序是由另一个用户创建的,而不是由Google.创建的。

此应用程序可访问以下个人信息:电子邮件地址.

但是日志中仍然没有显示任何内容,页面也没有显示任何内容。

我只是不明白..。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-03-29 01:04:08

尽管Session.GetActiveUser()的参考文档中没有明确说明这一点,但我的测试证实,您的web应用程序需要作为访问web应用程序的用户执行,才能访问getActiveUser()。我使用了下面的代码和这里描述的日志库。

根据应用程序的用例,您可以使用创建包含集中式ScriptDB实例的库来捕获活动用户电子邮件。然后,创建另一个与您的私有电子表格和同一个scriptDB库一起工作的项目。

代码语言:javascript
运行
复制
var LOG_FILENAME = 'your-log-doc'
var LOG_PATH = 'folder/subfolder/third-folder'


function doGet() {
  //Change variable above to a good path and filename for you
  var x = LogLibrary.InitializeLogging(LOG_PATH, LOG_FILENAME)
  Logger.log(x)

  var email = Session.getActiveUser().getEmail();
  Logger.log("Start email logging")
  Logger.log(email);
  LogLibrary.fnSaveLog()  //Write the save and flush the logger content

  // then do something to render the Email address on the page
  var HTMLToOutput = '<html><h1>A header</h1><p>' + email + '</p></html>';
  return HtmlService.createHtmlOutput(HTMLToOutput);
}
票数 3
EN

Stack Overflow用户

发布于 2020-06-13 11:04:51

我做了一些测试,因为我正在寻找一个解决同样问题的方法,我的结论是:

  • 因此,该功能可以工作,web应用程序应该以“用户访问web应用程序”的形式执行,为此,应该配置web应用程序,使其可以作为用户访问web应用程序执行。
  • 注意:用户将被要求授权脚本访问,编辑和管理它的驱动器也接收和发送邮件(这是不明显的!!对所有使用corse的用户来说“)。

最后,它取决于您将使用它的目的。

在google文档中,没有提到这个问题!!

对于返回电子邮件地址作为文本作为脚本或在google表单中使用的简单函数。等等:

代码语言:javascript
运行
复制
function onOpen(){
var emailName = Session.getActiveUser().getEmail();
var optionsHtml =  emailName.toString().split(",");

     return optionsHtml;
}
票数 1
EN

Stack Overflow用户

发布于 2013-03-30 05:12:09

看看气体问题论坛(google)。哈克斯曾多次被提及。基本上,您需要将其设置为运行为用户访问应用程序,如果您期望用户从您的领域以外。更改该设置可能会破坏应用程序,这取决于它所需的权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15651781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档