问候,
我发现了几个关于此错误的问题:
"ScriptError: Authorisation is required to perform that action."
但我找不到与我的问题有关的问题。
我想要做的是使用 google.script.run 从 .html 文件调用函数 .gs 文件,其中两个文件都在库中。参考这个答案,这个答案和这个错误报告,我在使用库的脚本中创建了“包装函数”,但仍然未能完成执行。
这是我所做的:
.html 在库中:
<html>
<head>
<script>
function onFailure(error) {
console.log("ERROR: " + error);
}
function myfunc() {
console.log("HERE");
google.script.run.withFailureHandler(onFailure).callLibraryFunction('LibraryName.test', ['test123']);
}
</script>
</head>
<body>
<button onclick="myfunc()">CLICK</button>
</body>
</html>
.gs 在库中
function test(x){
Logger.log(x);
}
.gs 在使用库的脚本中:
function callLibraryFunction(func, args) {
var arr = func.split(".");
var libName = arr[0];
var libFunc = arr[1];
args = args || [];
return this[libName][libFunc].apply(this, args);
}
控制台记录HERE
但随后它记录ERROR: ScriptError: Authorisation is required to perform that action.
而不是预期的输出,test123
.
注意:HTML 用于表格中的自定义无模式对话框,不适用于 Web 应用程序。
我真的希望有人能在这方面帮助我。先感谢您。