我需要让最终用户能够在没有 google 应用程序脚本的情况下 运行 一些功能,而不让他访问代码
I need to make the end user able to run some functions without google apps script without giving him access to the code
我有一些 google sheet 应该有一些普通用户应该能够 运行 的功能,但我不希望他们能够看到代码,所以我现在正在做的是:
- 使用引用包含代码的库的绑定脚本创建 sheet
- 一个包含脚本代码的库 运行
现在的问题是我必须让用户访问库,以便他们能够从 sheet 运行 中使用函数,这使得整个想法毫无用处,因为我不想让他们看到我的代码。
如果有人知道我如何隐藏我的代码,同时又允许用户访问代码中的 运行 函数,请帮忙,谢谢。
我相信你的目标如下。
来自你的后续标题
I need to make the end user able to run some functions without google apps script without giving him access to the code
- 您想使用户 运行 Google Apps 脚本既不授权范围也不向用户显示脚本。
在这种情况下,例如,作为解决方法,使用 Web 应用程序怎么样?我认为当使用 Web Apps 时,您的目标可能会实现。此解决方法的流程如下。
用法:
1。创建一个 Google Apps 脚本的新项目。
Web Apps 的示例脚本是 Google Apps 脚本。所以请创建一个 Google Apps Script 项目。
如果要直接创建,请访问https://script.new/。在这种情况下,如果您没有登录 Google,则会打开 log-in 屏幕。所以请登录Google。这样,Google Apps Script 的脚本编辑器就打开了。
2。示例脚本。
请将以下脚本复制并粘贴到创建的 Google Apps 脚本项目中并保存。此脚本用于 Web 应用程序。
function doGet(e) {
const {value} = e.parameter;
// do something: Please put the script you want to run.
return ContentService.createTextOutput(`<result>Updated ${value}</result>`).setMimeType(ContentService.MimeType.XML); // Here, you can return the value.
}
这个脚本是一个示例脚本。即使你直接使用它,你也可以测试这个解决方法。
3。部署 Web 应用程序。
详细信息见the official document。
- 在脚本编辑器上,在脚本编辑器的右上角,点击“点击部署”->“新建部署”。
- 请点击“Select类型”->“Web App”。
- 请在“部署配置”下的字段中输入有关 Web 应用程序的信息。
- 请select“我”为“执行为”。
- 这就是此解决方法的重要性。
- 请 select “任何人” “谁有权访问”。
- 根据你的情况,我认为这个设置可能比较合适。
- 请点击“部署”按钮。
- 复制 Web App 的 URL。就像
https://script.google.com/macros/s/###/exec
。
- 当您修改 Google Apps 脚本时,请将部署修改为新版本。这样,修改后的脚本就会反映在 Web Apps 中。请注意这一点。
- 您可以在“Redeploying Web Apps without Changing URL of Web Apps for new IDE”的报告中看到详细信息。
4。正在测试。
为了测试此 Web Apps,请将您的 Web Apps URL、输入的值和公式如下所示。
本次测试,样本公式为=IMPORTXML(CONCATENATE(A1,"?value=",A2),"/result")
.
通过此流程,用户可以 运行 您的脚本,而无需同时授权范围和显示您的脚本。在此解决方法中,该值作为 XML 数据返回。这样,网络应用程序可以与 IMPORTXML
.
一起使用
注:
- 当您修改 Google Apps 脚本时,请将部署修改为新版本。这样,修改后的脚本就会反映在 Web Apps 中。请注意这一点。
- 您可以在“Redeploying Web Apps without Changing URL of Web Apps for new IDE”的报告中看到详细信息。
- 我建议的脚本是一个简单的脚本。所以请根据自己的实际情况修改。
参考文献:
我有一些 google sheet 应该有一些普通用户应该能够 运行 的功能,但我不希望他们能够看到代码,所以我现在正在做的是:
- 使用引用包含代码的库的绑定脚本创建 sheet
- 一个包含脚本代码的库 运行 现在的问题是我必须让用户访问库,以便他们能够从 sheet 运行 中使用函数,这使得整个想法毫无用处,因为我不想让他们看到我的代码。 如果有人知道我如何隐藏我的代码,同时又允许用户访问代码中的 运行 函数,请帮忙,谢谢。
我相信你的目标如下。
来自你的后续标题
I need to make the end user able to run some functions without google apps script without giving him access to the code
- 您想使用户 运行 Google Apps 脚本既不授权范围也不向用户显示脚本。
在这种情况下,例如,作为解决方法,使用 Web 应用程序怎么样?我认为当使用 Web Apps 时,您的目标可能会实现。此解决方法的流程如下。
用法:
1。创建一个 Google Apps 脚本的新项目。
Web Apps 的示例脚本是 Google Apps 脚本。所以请创建一个 Google Apps Script 项目。
如果要直接创建,请访问https://script.new/。在这种情况下,如果您没有登录 Google,则会打开 log-in 屏幕。所以请登录Google。这样,Google Apps Script 的脚本编辑器就打开了。
2。示例脚本。
请将以下脚本复制并粘贴到创建的 Google Apps 脚本项目中并保存。此脚本用于 Web 应用程序。
function doGet(e) {
const {value} = e.parameter;
// do something: Please put the script you want to run.
return ContentService.createTextOutput(`<result>Updated ${value}</result>`).setMimeType(ContentService.MimeType.XML); // Here, you can return the value.
}
这个脚本是一个示例脚本。即使你直接使用它,你也可以测试这个解决方法。
3。部署 Web 应用程序。
详细信息见the official document。
- 在脚本编辑器上,在脚本编辑器的右上角,点击“点击部署”->“新建部署”。
- 请点击“Select类型”->“Web App”。
- 请在“部署配置”下的字段中输入有关 Web 应用程序的信息。
- 请select“我”为“执行为”。
- 这就是此解决方法的重要性。
- 请 select “任何人” “谁有权访问”。
- 根据你的情况,我认为这个设置可能比较合适。
- 请点击“部署”按钮。
- 复制 Web App 的 URL。就像
https://script.google.com/macros/s/###/exec
。- 当您修改 Google Apps 脚本时,请将部署修改为新版本。这样,修改后的脚本就会反映在 Web Apps 中。请注意这一点。
- 您可以在“Redeploying Web Apps without Changing URL of Web Apps for new IDE”的报告中看到详细信息。
4。正在测试。
为了测试此 Web Apps,请将您的 Web Apps URL、输入的值和公式如下所示。
本次测试,样本公式为=IMPORTXML(CONCATENATE(A1,"?value=",A2),"/result")
.
通过此流程,用户可以 运行 您的脚本,而无需同时授权范围和显示您的脚本。在此解决方法中,该值作为 XML 数据返回。这样,网络应用程序可以与 IMPORTXML
.
注:
- 当您修改 Google Apps 脚本时,请将部署修改为新版本。这样,修改后的脚本就会反映在 Web Apps 中。请注意这一点。
- 您可以在“Redeploying Web Apps without Changing URL of Web Apps for new IDE”的报告中看到详细信息。
- 我建议的脚本是一个简单的脚本。所以请根据自己的实际情况修改。