【问题标题】:Google Apps Script - Deploy as Webapp - new version every time?Google Apps 脚本 - 部署为 Webapp - 每次都是新版本?
【发布时间】:2019-09-13 00:03:49
【问题描述】:

除非我在新版本下部署为 webapp,否则我对 Code.gs 文件所做的更改似乎无法识别。这是设计的行为还是我在其他地方做错了什么?

【问题讨论】:

  • 你的意思是 Code.gs 文件吗?请向我们展示相关代码。
  • 开枪!是的。更正。谢谢

标签: google-apps-script web-applications version


【解决方案1】:

如果您尝试更新部署并希望保持 相同 URL,请按照 2021 年 3 月的方式进行操作:

  • 部署 -> 新部署每次都会创建一个新 URL。我相信这样做的目的是让程序的多个版本可以在不中断主版本的情况下进行测试。

你想要这个:

  • 部署 -> 管理部署:在左上角的“活动”下,确保您选择了正确的部署(将鼠标悬停在 URL 上可查看全部内容)
  • 然后单击右上角的铅笔图标以编辑此部署。单击“版本”下拉框和“新版本”。然后“部署”。这将使用您的最新代码更新此版本,并保持与您没有进行新部署(只是更新)相同的 URL!不幸的是,这在我能找到的任何地方都不是很清楚。

如果您有十几个其他不想要的活动,您可以将它们归档(图标就在铅笔旁边)。 如果您归档了过去实际使用的 URL,您可以通过在“已归档”下单击它,然后单击铅笔图标,然后单击“部署”将其恢复。

  • 在 Deploy -> Test deployment 下,您有您的 /dev 版本,这是您最新的实时代码(如旧编辑器)

【讨论】:

    【解决方案2】:

    这个答案怎么样?请认为这只是几个答案之一。

    在部署Web Apps的项目中,当修改项目中的脚本时,需要将Web Apps重新部署为新版本。这样,最新的脚本就会反映到 Web 应用程序中。这是正常的规格。我认为这种情况可能应该将开发脚本和稳定脚本分开。

    自动将最新脚本反映到 Web 应用程序

    有几种方法可以在修改脚本时自动将最新的脚本反映到 Web Apps。

    1。使用开发者模式

    当使用开发者模式时,可以将最新的脚本用于 Web 应用程序,而无需重新部署为新版本。当您部署 Web 应用程序时,您可以看到带有链接的“最新代码”。 URL 类似于https://script.google.com/macros/s/###/dev。通过使用这个 URL,当脚本被修改时,您可以在 Web Apps 使用最新的脚本。

    作为重要的一点,当您使用它时,请使用访问令牌。这样,您就可以访问 Web 应用程序。示例 curl 可以在 here 看到。

    2。使用库

    如果你想通过https://script.google.com/macros/s/#####/exec这样的URL自动使用最新的脚本,可以使用库来实现。准备工作如下。

    1. 创建 2 个项目,即项目“A”和项目“B”。
      • 项目“A”用作项目部署的 Web 应用程序。项目“B”用作 GAS 库。
    2. 在项目“A”中,将项目“B”安装为 GAS 库。此时,将“开发模式”设置为“开启”。
    3. 在项目“A”中,放置函数function doGet(e) {return library.run(e)}
      • 在这种情况下,库名称假定为 library
    4. 在项目“B”中,放置函数function run(e) { do something }
      • 当您要修改Web Apps的脚本时,请修改Project“B”的脚本。

    通过以上设置,当Project“B”的脚本被修改时,最新的脚本会自动反映到Web Apps。这样,就不需要重新部署为新版本。

    参考资料:

    如果我误解了您的问题并且这不是您想要的方向,我深表歉意。

    【讨论】:

    • 一个绝妙的答案!!通过ScriptApp.getOAuthToken() 获取的令牌需要多久刷新一次?
    • @Daveh0 感谢您的回复。我很高兴你的问题得到了解决。访问令牌的过期时间为 60 分钟。所以ScriptApp.getOAuthToken()检索到的访问令牌也是60分钟。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    • 2021-09-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多