Google Apps脚本ScriptApp.getService().getUrl()总是返回错误的URL

2023-11-22

根据文档,此方法应返回 Web 应用程序的 URL:

“如果已部署,则返回 Web 应用程序的 URL;否则返回 null。如果您正在运行开发模式 Web 应用程序,则返回开发模式 url。”

我们有一个 Google 日历插件,其中我们使用以下方式将自定义设置页面 (html) 发送给客户:HtmlService我不知道如何ScriptApp.getService().getUrl()适用于版本化部署。

这是一个有趣的场景:

在一个新的 Google Script 项目中,我们从清单文件部署(不是 webapp,尽管清单上有“webapp”部分)

  1. 来自清单的第一个版本化部署:

    ScriptApp.getService().getUrl()正确返回https://script.google.com/a/gong.io/macros/s/AKfycbzR21YpWNakFEisFcW1zo-tArveQ5nXj_gTRYLF4OZWkMf_Gun8Q3I2WZncfLSbjKEr/exec

    版本化部署 ID:AKfycbzR21YpWNakFEisFcW1zo-tArveQ5nXj_gTRYLF4OZWkMf_Gun8Q3I2WZncfLSbjKEr

  2. 进行了一些更改,创建了新版本的部署

    ScriptApp.getService().getUrl()正确返回https://script.google.com/a/gong.io/macros/s/AKfycbxXBdBXAV7olI0NGe-uS0_4FEFZPPNXLVHml6NNNW9zYf1fLOqfLhLYsaz6FTmjduIq/exec

    版本化部署 ID:AKfycbxXBdBXAV7olI0NGe-uS0_4FEFZPPNXLVHml6NNNW9zYf1fLOqfLhLYsaz6FTmjduIq

  3. 我们已经通过以下方式部署了脚本发布->部署为网络应用程序...可能在我们的生产脚本中错误地执行了此操作

    Web 应用程序 URL 是https://script.google.com/a/gong.io/macros/s/AKfycbzv1gX4eim1CzTjnFc4sFNvLMw9mXCfOv4laDu-_9AKefk5jXg/exec

  4. 对脚本进行另一轮代码更改。这次我们从清单部署:

    ScriptApp.getService().getUrl() 不正确地回报https://script.google.com/a/gong.io/macros/s/AKfycbzv1gX4eim1CzTjnFc4sFNvLMw9mXCfOv4laDu-_9AKefk5jXg/exec

    版本化部署 ID:AKfycbx29Pcs8_cpEkodrfWGklz8t_OAs87OBSEtxLMkStrya64wUV4M2ePW_tNTTWlq0_T1

请注意,这一次 - 我们获得了 webapp 部署 ID - 而不是版本化部署 ID。

从现在开始,无论我尝试过什么 - 我总会得到https://script.google.com/a/gong.io/macros/s/AKfycbzv1gX4eim1CzTjnFc4sFNvLMw9mXCfOv4laDu-_9AKefk5jXg/exec无论我们做什么。

  1. 删除所有版本化部署并创建一个新的部署
  2. 禁用的网络应用程序

enter image description here

截至目前,我所做的一切最终都会ScriptApp.getService().getUrl()返回此网址。

我怎样才能重置它并获得getUrl()返回版本化部署 ID 而不是不存在的 Web 应用程序部署 ID?

编辑:错别字


这可能是一个错误。

这个问题已在问题跟踪器中报告(我猜是您做的),现在已在内部转发。在此发布此内容以提高其可见性:

  • ScriptApp.getService().getUrl() 不适用于版本化部署

对于受此影响的任何人,请单击左上角的星星。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google Apps脚本ScriptApp.getService().getUrl()总是返回错误的URL 的相关文章

  • 如何在表单提交时运行 Appscript?

    我正在尝试创建当用户完成表单提交时重定向到网络应用程序的 Google 表单 我查过谷歌开发者文档 https developers google com apps script guides triggers 但我看不到一种简单的方法来做
  • 列出 Google 云端硬盘上特定演示文稿/文档的所有共享用户

    我们需要一份完整的列表 列出已获得 Google 云端硬盘上特定演示文稿 文档的 共享 查看权限的人员 我们有屏幕截图 但可能还不够 我们如何以编程方式检索这些信息 附加到 a 的属性File对象包括三个与用户相关的项目 Owner 一个单
  • Google Apps 脚本自动生成的库文档

    我目前正在开发一个 Google Apps 脚本库 它基本上将电子表格视为数据库对象 目前 该库有两个相同的功能 例如 Opens and creates a query object for a spreadsheet with the
  • 如何在 Compojure 中使用 lib-noir 有状态会话

    我想我这里有一个相当简单的问题 但我已经看这个屏幕太久了 所以我正在尝试 但失败了 让有状态会话在 Compojure 中工作 refheap代码粘贴is here https www refheap com paste 11161 你可以
  • 如何从 Google 电子表格中删除项目?

    我通过在脚本编辑器上选择 文件 gt 制作副本 错误地制作了 Google Apps 脚本项目的副本 从那时起 每次我在该项目所属的电子表格屏幕上单击 工具 gt 脚本编辑器 时 我看到显示两个项目 原始项目和复制项目 的屏幕 我需要选择一
  • 许多文档引用了一个 Google Apps 脚本 [重复]

    这个问题在这里已经有答案了 我已经通过驻留在 Google 文档中的 Google Apps 脚本创建了一个脚本 我使用该文档作为模板对象 然后将其复制到我使用这些脚本函数的许多 Google 文档中 问题是 每当我编辑该主脚本时 所有子文
  • 电子表格的 Google 脚本(If 语句)

    我希望有人能帮助我解决这个问题 我是编码新手 我有一个谷歌电子表格 其中有一个可以推送电子邮件的脚本 我试图让脚本忽略脚本已发送电子邮件的行 function onOpen var ui SpreadsheetApp getUi Or Do
  • 删除或删除云端硬盘中的特定文件

    我有一个每天早上 5 点运行的脚本 它将特定文件 data xls 移至垃圾箱 但是 由于 DocsList 已停用 该脚本不再起作用 并且我在更新它时遇到了问题 我在这里看到了几个删除 setTrashed 脚本 但它们似乎都适用于一组文
  • 复制带有内嵌图像的表格

    我正在尝试将 GDoc 的内容复制到另一个 GDoc 中 这对于所有不同的元素类型都非常有效 包括一个表 枚举DocumentApp ElementType TABLE 但是 如果表包含内联图像 EnumDocumentApp Elemen
  • 如何在前端使用Hibernate乐观锁版本属性?

    使用实体的版本属性的乐观锁定工作正常并且易于实现
  • Clasp 无法创建新的 Apps 脚本

    我用这个终端命令克隆了一个应用程序脚本 clasp clone
  • javascript 对象是否像 Ruby 一样“开放”?

    在 Ruby 中 我可以使用与声明自己的语法相同的语法来添加和修改任何类 对象或方法的功能 因为 Ruby 有 开放类 JavaScript 是这样的吗 举个例子 就我而言 我想更改 Google Apps 脚本处理 URL 对象的方式 以
  • 列出文件夹中的所有文件,包括子文件夹中的文件

    我正在尝试创建一个 Google Apps 脚本 该脚本将允许用户获取文件夹内的所有文件 包括连接到主文件夹的子文件夹内的文件 请注意 在我的代码中 我是提供folderid的人 这将是主文件夹 我已设法从文件夹中获取所有文件 但我还希望提
  • Google Apps 脚本中 ui.alert 窗口中的分割线和粗体文本

    我觉得这应该很简单 但我找不到任何相关内容 我希望我的消息在 ui alert 窗口中弹出 以粗体显示某些单词并在以下位置分割字符串 进入新行 这是我的代码 function send var ui SpreadsheetApp getUi
  • 将 html 转换为 pdf 时防止表格单元格跨页破坏

    使用 Google Apps 脚本 我有一个 html 模板 我填写该模板 然后以 pdf 形式发送 通过传真和 或电子邮件 该模板包括一个带有问题 答案的两列表格 如果行数足够多 表格会在pdf中跨页分页 并且分页符通常发生在单元格的中间
  • 使用主宰器将实时数据发送给客户端

    我尝试使用 Flask 的主宰框架 以便按照 Flask 代码片段将实时信息发送到客户端浏览器http flask pocoo org snippets 80 http flask pocoo org snippets 80 当我尝试为我的
  • 如何设置多个过滤器?

    我有一个关于将过滤器应用于多个值以使用 Google 脚本隐藏它们的问题 我有一个具有多种状态的项目跟踪器 例如 达到目标 已完成 已取消 已延迟 等 我想编写一个脚本来设置 状态 列的筛选器值 以便标记为 已完成 或 的行 已取消 被隐藏
  • ReferenceError:未定义 ConferenceDataService

    我正在尝试开发像 Zoom 会议这样的谷歌日历插件 在 appsscript json 文件中 有以下代码 calendar conferenceSolution onCreateFunction createConference id 1
  • 如何将现有 ASP.NET 网站转换为 HTML 5

    我有一个网站 首先由 Visual Studio 2005 创建 然后转换为 Visual Studio 2008 目前使用 Visual Studio 2008 在 Visual Studio 2010 Service Pack 1 之后
  • 迭代数组时,如何在 Google 文档的 Google Apps 脚本中附加项目符号和子项目符号?

    我有一份与会者名单 我想列出每一个 并在其后面添加两个要点 每个要点都有一个子项目符号 我尝试了以下代码 但它列出了数组的元素 然后在末尾写入所有项目符号 for i 0 i lt attendees length i body inser

随机推荐

  • C# 创建没有 的 XML 输出文件

    我是 C 开发新手 所以这里可能是一个非常简单的问题 我试图获得这样的输出
  • 自定义 pip install 命令未运行

    我正在尝试为我正在编写的 pip 库运行一些预安装命令 我的安装文件如下所示 from setuptools import setup from setuptools command install import install class
  • 如何对 __m128 类型变量中的浮点元素取反(更改符号)?

    是否有任何单个指令或函数可以反转符号 m128 内的每个浮点数 IE a r0 r1 r2 r3 gt a r0 r1 r2 r3 我知道这可以通过 mm sub ps mm set1 ps 0 0 a 但它不是可能很慢吗 mm set1
  • 在WPF网格中绘制对角线

    我想我正在尝试在 WPF 中做一些相对简单的事情 但我无法弄清楚如何做 我认为我可能正处于将其过于复杂化的边缘 如果我有一个 3 行 3 列的网格 并且我想连接两个单元格的角以创建对角边框 那么最好的方法是什么 理想情况下 如果调整控件的大
  • 在 Angular 8 中,如何从浏览器控制台访问注入的服务?

    我正在使用 Angular 8 我想从浏览器控制台 Chrome 开发工具 访问注入的服务 我可以像这样从浏览器控制台访问注入器 ng probe document querySelector app root injector 我想在开发
  • 声音文件作为 android MediaPlayer 中的变量

    在学习 android java 的过程中 我想创建一个可以从原始文件夹中播放特定声音的函数 我试图将声音文件定义为字符串 以便可以重用该函数 但是我陷入了 无法解析符号 的困境 public class MainActivity exte
  • 与共享主键的一对一关系生成 n+1 个选择;有什么解决方法吗?

    想象一下关系数据库中有 2 个表 例如人员和计费 这些实体之间定义了一个 非强制性 OneToOne 关联 并且它们共享 Person 主键 即 PERSON ID 在 Person 和 Billing 中定义 并且它是后者的外键 通过命名
  • Java Socket和ServerSocket在使用端口上的区别

    在服务器端 我们使用 Socket server serverSocket accept 创建一个套接字 创建套接字后 我们可以创建一个新线程来处理该套接字的输入 输出流 因此 如果有进一步的连接请求进来 我们可以返回监听同一端口并创建新的
  • 这超出了 GitHub 的文件大小限制 [重复]

    这个问题在这里已经有答案了 我的 github 存储库中有一些大文件 我尝试添加 提交 推送 但推送命令给出了以下错误 远程 错误 文件 app dump sql 为 106 67 MB 这超出了 GitHub 的文件大小限制 100 00
  • 创建交互式登录会话

    我正在尝试创建一个类似于微软废弃的实用程序超快速用户切换器 download 它允许快速用户切换 而无需通过欢迎屏幕 我有一个使用未记录的工作实现WinStationConnectWAPI 以及WTSEnumerateSessions 但只
  • Caffe可以直接对图像的像素进行分类吗?

    我想将图像的像素分类为 是街道 或 不是街道 我有一些训练数据KITTI数据集我看到 Caffe 有一个IMAGE DATA图层类型 标签以与输入图像大小相同的图像形式存在 除了 Caffe 之外 我解决这个问题的第一个想法是在应该分类的像
  • 在 M1 Mac 上找不到 PyTables 的 HDF5 安装

    在 M1 Mac macOS Monterey 上运行12 4 Python 3 10 3 pip install tables Collecting tables Using cached tables 3 7 0 tar gz 8 2
  • 我是否必须在 Webstart 应用程序中显式调用 System.exit() ?

    最近我将 Swing 应用程序转换为 Webstart 该过程非常简单 但我发现在关闭所有窗口后 我的应用程序的 JVM 并未终止 线程转储显示有几个非守护线程 特别是 Swing 的 EDT AWT 和几个与 websart 相关的线程
  • 如何隐藏 C++ 中的类?

    假设我有 2 个类 我希望它们可见 在给定的头文件中 还有一个类是它们的祖先 我希望其中一个类仅对前面提到的两个类可见 在C 中如何实现不可见的类功能 滥用class充当namespace会这样做 我不推荐这种模式 class hidden
  • 服务中的 postDelayed()

    我正在尝试在一段时间内自行重新启动服务 我的代码看起来像这样 在onStartCommand Looper prepare Handler handler new Handler handler postDelayed new Runnab
  • 如何在Python中读取格式化输入?

    我想从 stdin 读取输入的五个数字 如下所示 3 4 5 1 8 分成单独的变量 a b c d 和 e 我如何在Python中做到这一点 我试过这个 import string a input b a split 对于两个整数 但它不
  • 如何从 React Native 打开其他应用程序?

    如何从 ReactNative 打开其他应用程序 Gmail 相机 如何将数据从当前场景传递到其他应用程序 我找到了这个 npm 库反应本机应用程序链接可以打开其他应用程序 这是基于深层链接的 如果您有任何深层链接 那么这个库可以提供帮助
  • 摘要式身份验证的概念 - 它真的有效吗?

    据我了解 摘要式身份验证 这是一种单向操作 对密码进行哈希处理并将哈希数据传输到服务器 然后 服务器将使用存储的密码 对其进行哈希处理 并与接收到的哈希密码进行比较 应该可以免受中间人攻击 我不明白的是 如果我是中间人黑客 我不需要原始密码
  • 如何测试ActiveJob是否已入队?

    如果记录成功保存 我有一个创建操作 该操作会调用 ActiveJob def create object Object new importer params respond to do format if object save MyJo
  • Google Apps脚本ScriptApp.getService().getUrl()总是返回错误的URL

    根据文档 此方法应返回 Web 应用程序的 URL 如果已部署 则返回 Web 应用程序的 URL 否则返回 null 如果您正在运行开发模式 Web 应用程序 则返回开发模式 url 我们有一个 Google 日历插件 其中我们使用以下方