登录多个 Google 帐户时 Google Web 应用程序将无法运行

问题描述 投票:0回答:3

我正在使用 Google Apps 脚本创建一个网络应用程序,但遇到了困难。

有时,使用网络应用程序的用户会在使用多个 Google 帐户登录时使用它。当用户使用多个帐户登录时尝试访问 Google Web 应用程序时,会出现一个已知错误:无法登录 Google Apps 脚本

已知的解决方案是:

  1. 注销所有帐户并仅以一个帐户登录。
  2. 使用隐身模式,从而仅以一个用户身份登录
  3. 为单独的 Google 帐户使用单独的浏览器。

不幸的是,这些解决方案都不适合当前情况。我自己知道如何处理错误,但是如何以编程方式通知用户这些解决方案?

我想做的是拦截这个错误页面,并输出我自己的错误,这可能会指示用户注销他们的其他帐户。我正在使用 Google 协作平台部署网络应用程序,但在那里没有任何运气。

google-apps-script web-applications google-sites
3个回答
2
投票

检查问题跟踪器

在登录多个 gmail.com 帐户时安装表格插件后,google.script.run 出现意外的“需要授权”错误

  • 评论#114,有附加组件的解决方法
  • 评论#117,有另一种针对附加组件的解决方法

您还没有提到您想要实现的目标,但可能有解决方法。

另一个想法可能是制作一个中间页面,作为一种“登陆页面”,可以提醒用户此问题,然后将他们重定向到 Web 应用程序。如果您使用 cookie 或本地存储 API,那么如果他们在过去几天内看到它,您可以立即将其重定向。

该错误的当前已知状态

我似乎记得在某个地方看到过,虽然我现在找不到了,但 Apps 脚本团队正计划开始在 2021 年解决这个问题。


1
投票

作为解决方法,您可以从新的浏览器会话开始,首先登录要运行脚本的帐户,使用预期帐户至少加载脚本一次,然后才登录辅助帐户。

描述我的具体用例:

  • Google 帐户 A:允许执行脚本
  • Google 帐户 B:作为域策略阻止脚本执行

如果先登录帐户 B,尝试授权脚本,然后登录帐户 A 并尝试从后者运行脚本,即使他们明确尝试使用帐户 A 执行脚本,脚本也会默默失败。值得一提的是,该脚本依赖于

HtmlService
。这不会影响项目中不依赖所述服务的其他脚本。

此解决方法的步骤是:

  1. 从新的会话开始
  2. 登录账户A
  3. 授权并完整运行脚本
  4. 登录帐户B
  5. 从帐户 A 再次运行脚本
  6. 避免尝试从帐户 B 授权脚本

然后,即使在多次刷新之后,脚本也会执行。关闭并重新打开脚本所绑定的电子表格也不会中断它。


0
投票

我终于想出了如何解决这个问题。我也有类似的情况。我一直登录多个 Google 帐户。我通常必须打开隐身窗口。

但是,我学到的是,首先注销所有帐户。然后登录 Google Web App 脚本所需的帐户。让 Web 应用程序加载。

然后,登录您的其他帐户。一旦您使用验证 Google Web 应用程序所需的帐户登录,则登录其他 Google 帐户将不会受到干扰。

我在其他地方没有找到这个解决方案。

更新:这并不总是有效。一段时间后就坏了。

© www.soinside.com 2019 - 2024. All rights reserved.