我如何访问在谷歌脚本编辑器之外定义的函数

How can I access functions defined in Google Script Editor outside of it?

本文关键字:编辑器 脚本 定义 函数 谷歌 何访问 访问      更新时间:2023-09-26

如果我有一个在谷歌电子表格脚本编辑器中编写的函数,该函数以JSON格式检索电子表格中的数据,我如何才能在我自己的代码中访问脚本编辑器之外的函数?我想访问JSON并在我自己的代码中操作它。是否有一种方法可以使用电子表格API?我在脚本编辑器中以特定的方式格式化它,所以我不能只使用提供的json-in-script。在调用(http://spreadsheets.google.com/feeds/feed/key/worksheet/public/basic?alt=json-in-script&callback=myFunc)中有一个myFunc的回调函数。我可以使用我在脚本编辑器中定义的函数来取代myFunc吗?

在你的评论之后,你的用例带来了一些细节,有一个专门设计的Google-Apps-Script功能,可以访问你从另一个脚本中编写的一些函数:它被称为,在文档中有完整的描述。


编辑,紧跟第二条注释:

从javascript(或任何其他语言)脚本,不是谷歌脚本(GS)调用GS函数是不可能的,如果你考虑使用它作为一个函数…

,

你最终可以做的——取决于这个函数必须处理的数据——是将一个脚本部署为一个webApp,作为一个服务运行,并使用相当于urlFetch的方法从你的外部应用调用这个服务(这是在GS中做的服务)。

该服务将有一个url,你可以向它添加参数,它将返回一个结果,你可以在本地应用程序中使用。

当然,这个工作流程有一些限制,可能会很快变得复杂,但在许多情况下,它是完全可行的。

请注意,您必须在以。exec结尾的"versioned"url中使用(不确定这个词是否正确,但我的意思是与脚本版本对应的发布url,而不是可以用来测试GS中的脚本的"。dev"url)。

您可以在文档和许多其他资源(包括SO)中找到有关的详细信息。url通常是这样的:

https://script.google.com/macros/s/AKfycbyw-2WtmF7wsd__________azjImbMWm5YrxB8/exec?someParameter=someValue&otherParam=otherVal // etc...