我刚刚将插件首次发布到G Suite市场:D
(大约2周后,Google今天发布了我们的插件)
我注意到的第一件事是:很多错误 :(
尽管我非常仔细地用绑定文档测试了代码。
与以下代码行相关的错误:
Session.getActiveUser().getEmail()
尽管我对https://www.googleapis.com/auth/userinfo.email
具有OAuth权限,但它始终返回一个空字符串。
我猜(但不能确定)我需要改用此功能:
Session.getEffectiveUser().getEmail()
我不确定,因为我已经更新了代码并向G Suite Marketplace提交了新版本,但Google尚未发布(也许是因为从Addon Store迁移到G Suite Marketplace仍然很不稳定)>
那么您是否有在G Suite Marketplace上使用Addon处理此问题的经验?
我应该一直使用getEffectiveUser()
而不是getActiveUser()
吗?
编辑:
这是运行Session.getActiveUser()的代码的上下文:
google.script.run.functionX...
的客户端代码调用functionX(具有对Session.getActveUser()的调用)根据本指南 https://developers.google.com/gsuite/add-ons/concepts/editor-auth-lifecycle#authorization_modes, 使用google.script.run时,AuthMode为FULL
答案 0 :(得分:2)
正如我们在getActiveUser()
documentation上所读到的,如果您无法访问用户信息,则会得到一个空白字符串。由于AuthMode
在某些情况下会自动更改(如authorization modes documentation所述),因此我们建议对其进行记录,以检查其是否处于AuthMode.FULL
或任何其他模式下。我们希望这对您有用。请不要犹豫,向我们提供更多信息以寻求进一步的帮助。