Google Apps 脚本 - 部署为 Webapp - 每次都是新版本?
Google Apps Script - Deploy as Webapp - new version every time?
我对 Code.gs
文件所做的更改似乎无法识别,除非我在新版本下部署为 webapp。这是设计的行为还是我在其他地方做错了什么?
这个答案怎么样?请将此视为几个答案之一。
在部署Web Apps的项目中,当修改项目中的脚本时,需要重新部署Web Apps为新版本。由此,最新的脚本被反映到Web Apps。这是正常规格。我认为这种情况可能应该将开发脚本和稳定脚本分开。
自动将最新脚本反映到 Web 应用程序
有几种方法可以在修改脚本时自动将最新的脚本反映到Web Apps。
1。使用开发者模式
使用开发者模式时,Web Apps可以使用最新的脚本,无需重新部署为新版本。当您部署 Web 应用程序时,您可以看到 "latest code" 其中有一个 link。 URL 类似于 https://script.google.com/macros/s/###/dev
。通过使用这个URL,修改脚本后,您可以在Web Apps使用最新的脚本。
重要的一点是,当您使用它时,请使用访问令牌。通过此,您可以访问 Web 应用程序。示例卷曲可以在 here.
处看到
2。使用库
如果想像https://script.google.com/macros/s/#####/exec
一样使用URL自动使用最新的脚本,可以使用库来实现。准备工作如下
- 创建 2 个项目,即项目 "A" 和项目 "B"。
- 项目"A"用作部署Web Apps的项目。项目 "B" 用作 GAS 库。
- 在项目 "A" 中,安装项目 "B" 作为 GAS 库。届时,将"Development mode"设置为"Turn ON"。
- 在项目 "A" 中放置函数
function doGet(e) {return library.run(e)}
。
- 本例中库名假设为
library
.
- 在项目 "B" 中放置函数
function run(e) { do something }
。
- 如果要修改Web Apps的脚本,请修改Project "B"的脚本。
通过以上设置,当项目"B"的脚本被修改时,最新的脚本会自动反映到Web Apps。这样,就不需要重新部署为新版本了。
参考文献:
如果我误解了您的问题并且这不是您想要的方向,我深表歉意。
如果您正在尝试更新部署并希望保持 不变 URL,以下是截至 2021 年 3 月的操作方法:
- 部署 -> 新部署每次都会创建一个新的 URL。我相信目的是在不中断主版本的情况下可以测试多个版本的程序。
你想要这个:
- 部署 -> 管理部署:在左上角的“活动”下,确保您选择了正确的部署(将鼠标悬停在 URL 上以查看全部内容)
- 然后单击右上角的铅笔图标以编辑此部署。单击“版本”下拉框和“新版本”。然后“部署”。这将使用您的最新代码更新此版本并保持相同 URL 因为您没有进行新部署(只是更新)!不幸的是,这在我能找到的任何地方都不是很清楚。
如果您有许多其他不想要的活动,您可以将它们存档(图标就在铅笔旁边)。
如果您存档了您过去实际使用的 URL,您可以通过在“已存档”下点击它,然后点击铅笔图标,然后点击部署,将其恢复。
- 在 Deploy -> Test deployment 下,你有你的 /dev 版本,这是你最新的代码(就像旧的编辑器一样)
我对 Code.gs
文件所做的更改似乎无法识别,除非我在新版本下部署为 webapp。这是设计的行为还是我在其他地方做错了什么?
这个答案怎么样?请将此视为几个答案之一。
在部署Web Apps的项目中,当修改项目中的脚本时,需要重新部署Web Apps为新版本。由此,最新的脚本被反映到Web Apps。这是正常规格。我认为这种情况可能应该将开发脚本和稳定脚本分开。
自动将最新脚本反映到 Web 应用程序
有几种方法可以在修改脚本时自动将最新的脚本反映到Web Apps。
1。使用开发者模式
使用开发者模式时,Web Apps可以使用最新的脚本,无需重新部署为新版本。当您部署 Web 应用程序时,您可以看到 "latest code" 其中有一个 link。 URL 类似于 https://script.google.com/macros/s/###/dev
。通过使用这个URL,修改脚本后,您可以在Web Apps使用最新的脚本。
重要的一点是,当您使用它时,请使用访问令牌。通过此,您可以访问 Web 应用程序。示例卷曲可以在 here.
处看到2。使用库
如果想像https://script.google.com/macros/s/#####/exec
一样使用URL自动使用最新的脚本,可以使用库来实现。准备工作如下
- 创建 2 个项目,即项目 "A" 和项目 "B"。
- 项目"A"用作部署Web Apps的项目。项目 "B" 用作 GAS 库。
- 在项目 "A" 中,安装项目 "B" 作为 GAS 库。届时,将"Development mode"设置为"Turn ON"。
- 在项目 "A" 中放置函数
function doGet(e) {return library.run(e)}
。- 本例中库名假设为
library
.
- 本例中库名假设为
- 在项目 "B" 中放置函数
function run(e) { do something }
。- 如果要修改Web Apps的脚本,请修改Project "B"的脚本。
通过以上设置,当项目"B"的脚本被修改时,最新的脚本会自动反映到Web Apps。这样,就不需要重新部署为新版本了。
参考文献:
如果我误解了您的问题并且这不是您想要的方向,我深表歉意。
如果您正在尝试更新部署并希望保持 不变 URL,以下是截至 2021 年 3 月的操作方法:
- 部署 -> 新部署每次都会创建一个新的 URL。我相信目的是在不中断主版本的情况下可以测试多个版本的程序。
你想要这个:
- 部署 -> 管理部署:在左上角的“活动”下,确保您选择了正确的部署(将鼠标悬停在 URL 上以查看全部内容)
- 然后单击右上角的铅笔图标以编辑此部署。单击“版本”下拉框和“新版本”。然后“部署”。这将使用您的最新代码更新此版本并保持相同 URL 因为您没有进行新部署(只是更新)!不幸的是,这在我能找到的任何地方都不是很清楚。
如果您有许多其他不想要的活动,您可以将它们存档(图标就在铅笔旁边)。 如果您存档了您过去实际使用的 URL,您可以通过在“已存档”下点击它,然后点击铅笔图标,然后点击部署,将其恢复。
- 在 Deploy -> Test deployment 下,你有你的 /dev 版本,这是你最新的代码(就像旧的编辑器一样)