繁体   English   中英

Google 表格插件错误:需要授权才能执行该操作

[英]Google Sheets Add-on error: authorisation is required to perform that action

在谷歌决定改变之前,我有一个在我的域/公司内工作了多年的插件。 我重新发布了它,现在我可以运行它,但公司里没有其他人可以运行它。 他们收到的错误是:

"Authorisation is required to perform that action".

我无法准确指出错误的位置,因为 GCP 日志只告诉我 function 不是行,但似乎大多数时候在显示侧边栏时会出现错误。

我不使用任何类型的 API,只是 GAS,但“以防万一”我在 OAuth 同意屏幕中添加了这些范围: .../auth/script.container.ui and.../auth/spreadsheets

在 Google Workspace Marketplace SDK OAuth 范围中,我刚刚保留了默认值。

我还尝试添加 appscript.json 这个(在顶层):

  "oauthScopes": [
    "https://www.googleapis.com/auth/script.container.ui",
    "https://www.googleapis.com/auth/script.external_request",
    "https://www.googleapis.com/auth/script.scriptapp",
    "https://www.googleapis.com/auth/spreadsheets",
    "https://www.googleapis.com/auth/userinfo.email"
  ]

我还能尝试什么?

更新:按照评论中的要求,这是有问题的代码:

// clientside
google.script.run.
withSuccessHandler()
.withFailureHandler(failureHandler)  // failureHandler gets called
.aServerFunc() 

//serverside 
function aServerFunc(){
  Logger.log('REACHED') // NO REACHED APPEARS IN CLOUD LOGS !
  var docProp = PropertiesService.getDocumentProperties();  
  return docProp.getProperty(key)
}

所以我想问题不在于其他人,但我可以在插件中运行 google.script.run !

更新 2:我已经删除了 PropertiesService 调用,所以它只是服务器上的一个空白 function。 所以很明显,除了我之外没有人可以运行 google.scripts.run。

更新 3:根据评论中的要求,这是我发布插件的过程:我创建了一个谷歌云项目,然后配置了 OAuth 同意屏幕(与appsscript.json 的范围相同 - 见上面的列表),然后在谷歌工作区市场 SDK 我已经设置了脚本 ID 和部署编号以及相同的范围并发布了。

事实证明插件很好!

谷歌拒绝修复的只是这个 4 年前的错误如果用户使用多个帐户登录,则将使用默认帐户。

如果默认帐户是非域的并且加载项被限制在域中,加载项将无法授权。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM