【问题标题】:How can I stop Google App Engine(GAE) from CloudFunctions如何从 CloudFunctions 停止 Google App Engine(GAE)
【发布时间】:2019-02-01 04:55:28
【问题描述】:

我想从 CloudFunctions(node.js 8) 中停止 GAE 实例

我参考了以下文件。

https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions/patch?hl=JA

我写了下面的代码

        var requestdata = {
            appsId: PROJECT_NAME,
            servicesId: SERVICE_ID,
            versionsId: VERSION_ID,
            auth: authClient,
            automaticScaling: {
                standardSchedulerSettings:
              {
                maxInstances: 0,
                minInstances: 0
              }
            },  
        }
        appengine.apps.services.versions.patch(requestdata);

但是效果不好。 我遇到此错误消息。

Error: function crashed. Details:
Invalid JSON payload received. Unknown name "automaticScaling[standardSchedulerSettings][maxInstances]": Cannot bind query parameter. Field 'automaticScaling[standardSchedulerSettings][maxInstances]' could not be found in request message.
Invalid JSON payload received. Unknown name "automaticScaling[standardSchedulerSettings][minInstances]": Cannot bind query parameter. Field 'automaticScaling[standardSchedulerSettings][minInstances]' could not be found in request message.

我不知道如何解决这个问题。 如果您有任何建议,请告诉我。

【问题讨论】:

  • 我不是 Javascript 专家,但您似乎传递的是 Javascript 对象而不是 JSON。如果是这种情况,您需要使用 JSON.stringify(requestdata) 或类似的东西将其转换为 JSON。

标签: google-app-engine google-cloud-functions


【解决方案1】:

这是因为standardSchedulerSettings 不是有效参数,因为它在 v1beta5 中不存在。

截至January 2019,Admin API 已从 v1beta -> V1 升级。

不再支持 API 的 v1beta4 和 v1beta5 版本,并计划于 2019 年 1 月 14 日关闭。

要解决此问题,只需将您可能拥有的任何旧依赖项更新到最新的 version 并确保遵循最新的 V1 apps.services.versions.patch documentation

这对我有用。

【讨论】:

    猜你喜欢
    • 2011-03-11
    • 2021-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-27
    • 2019-04-16
    相关资源
    最近更新 更多