获取 Google Web 应用程序部署的版本
Getting the Version of Google Web App Deployment
我一直在尝试获取部署的版本号,并了解到我应该可以这样做:
var OAuthToken = ScriptApp.getOAuthToken();
var id = ScriptApp.getScriptId();
var url = 'https://script.googleapis.com/v1/projects/'+ id + '/deployments';
var options = { "muteHttpExceptions": true,
"headers": {
'Authorization': 'Bearer ' + OAuthToken
}
}
var response = UrlFetchApp.fetch (url, options);
Logger.log(response)
//return JSON.parse (response.getContentText());
然而,返回的是一个错误...“消息”:“Apps 脚本 API 之前未在项目 93197649900 中使用或已被禁用。通过访问 https://console.developers.google.com/apis/api/script.googleapis.com/overview?project=93197649900 然后启用它重试。如果您最近启用了此 API,请等待几分钟,让操作传播到我们的系统并重试。",
“状态”:“PERMISSION_DENIED”,…………
link 没有帮助,因为它只是给出“您没有足够的权限查看此页面”。
我认为这是因为 Web 应用程序脚本绑定到 Google Sheet 而不是独立的?
任何人都可以给我一些关于如何获得部署版本号的指示吗?
谢谢
戴夫
更新
我怀疑您可能还需要将脚本项目切换为使用标准 GCP 项目并在该项目上启用 Apps 脚本 API。有关说明,请参阅下面 linked 的文档:
https://developers.google.com/apps-script/guides/cloud-platform-projects
转到 Apps 脚本控制面板的设置页面以启用 API。请参阅下面的 link:
https://script.google.com/home/usersettings
您还需要更新清单 (appsscript.json) 并添加适当的范围以从部署端点获取数据。因此,打开 Apps 脚本编辑器并执行以下操作:
- 通过单击信息图标(在左侧边栏中)转到您项目的概览页面,滚动到页面底部并复制您的当前范围列表。
- 点击左侧边栏中的齿轮图标转到 Apps 脚本项目的设置页面,然后点击设置
Show "appsscript.json" manifest file in editor
的复选框。
- 通过单击编辑器图标(在左侧边栏中)返回主编辑器并打开清单 (appsscript.json) 并添加您现有的范围以及
https://www.googleapis.com/auth/script.deployments
范围,如下所示:
{
// other manifest properties
...
...
"oauthScopes": [
"...scope pulled from overview...",
"...scope pulled from overview...",
"https://www.googleapis.com/auth/script.deployments"
]
}
启用 Apps 脚本 API 并正确配置清单后,您可以使用脚本获取部署的版本号。
我一直在尝试获取部署的版本号,并了解到我应该可以这样做:
var OAuthToken = ScriptApp.getOAuthToken();
var id = ScriptApp.getScriptId();
var url = 'https://script.googleapis.com/v1/projects/'+ id + '/deployments';
var options = { "muteHttpExceptions": true,
"headers": {
'Authorization': 'Bearer ' + OAuthToken
}
}
var response = UrlFetchApp.fetch (url, options);
Logger.log(response)
//return JSON.parse (response.getContentText());
然而,返回的是一个错误...“消息”:“Apps 脚本 API 之前未在项目 93197649900 中使用或已被禁用。通过访问 https://console.developers.google.com/apis/api/script.googleapis.com/overview?project=93197649900 然后启用它重试。如果您最近启用了此 API,请等待几分钟,让操作传播到我们的系统并重试。", “状态”:“PERMISSION_DENIED”,…………
link 没有帮助,因为它只是给出“您没有足够的权限查看此页面”。
我认为这是因为 Web 应用程序脚本绑定到 Google Sheet 而不是独立的?
任何人都可以给我一些关于如何获得部署版本号的指示吗?
谢谢 戴夫
更新
我怀疑您可能还需要将脚本项目切换为使用标准 GCP 项目并在该项目上启用 Apps 脚本 API。有关说明,请参阅下面 linked 的文档:
https://developers.google.com/apps-script/guides/cloud-platform-projects
转到 Apps 脚本控制面板的设置页面以启用 API。请参阅下面的 link:
https://script.google.com/home/usersettings
您还需要更新清单 (appsscript.json) 并添加适当的范围以从部署端点获取数据。因此,打开 Apps 脚本编辑器并执行以下操作:
- 通过单击信息图标(在左侧边栏中)转到您项目的概览页面,滚动到页面底部并复制您的当前范围列表。
- 点击左侧边栏中的齿轮图标转到 Apps 脚本项目的设置页面,然后点击设置
Show "appsscript.json" manifest file in editor
的复选框。 - 通过单击编辑器图标(在左侧边栏中)返回主编辑器并打开清单 (appsscript.json) 并添加您现有的范围以及
https://www.googleapis.com/auth/script.deployments
范围,如下所示:
{
// other manifest properties
...
...
"oauthScopes": [
"...scope pulled from overview...",
"...scope pulled from overview...",
"https://www.googleapis.com/auth/script.deployments"
]
}
启用 Apps 脚本 API 并正确配置清单后,您可以使用脚本获取部署的版本号。