0

有没有可能通过“Cloud Scheduler”运行管理api方法“Patch”?

通过 API Explorer 运行时,我的功能可以完美运行。

w/ servingStatus 作为 updateMask 和 this 作为请求正文

{
  "servingStatus": "USER_DISABLED"
}

但是,如果我通过云调度程序运行请求,在我希望它运行时,我会收到 404 错误。

Target : HTTP

URL : https://appengine.googleapis.com/v1/apps/[APP-ID]/services/default/?updateMask=servingStatus

POST BODY : 
{
  "servingStatus": "USER_DISABLED"
}

可能我的 url 语法错误,但我找不到任何与我得到的不同的东西。

注意:我的目标是在特定时间关闭服务器。

4

3 回答 3

0

从此处找到的创建调度程序作业的当前文档中,如果我们查看--http-method标志,我们发现它被记录为限制为以下之一:

  • 删除
  • 得到
  • 邮政

明确地说,我们没有看到patch。确认这patch是正确的 HTTP 命令,我们在这里查看并确实看到它是正确的。

对我们来说可能有价值的下一个想法是意识到 Cloud Scheduler 可以触发 HTTP 或 PubSub 事件,并且实际上并不关心该事件的目标位置。这意味着我们可以创建一个云函数,它封装了当调用云函数时它封装了您想要的服务器关闭的想法。如果 Cloud Function 拥有关闭,那么难题就从我们如何驱动 Cloud Scheduler 调用 AppEngine Admin Api 转变为我们如何调用拥有关闭服务器的 Cloud Function?这更容易并且可能更健壮。您可以将 Cloud Function 配置为通过 GET 或 POST 响应 REST 请求,并让 Cloud Scheduler 提交该请求。

于 2019-03-31T23:33:26.500 回答
0

在使用 Appengine API 之前,有必要完成文档中描述的初步步骤

  1. 初始化 gcloud
  2. 启用 Google App Engine Admin API以及所需的任何其他 API。
  3. 授权 HTTPs 请求

请查看快速入门如何使用 Cloud Scheduler。还提供了您需要启用哪些 API的信息。

Cloud Scheuler API的正确范围是https://cloudscheduler.googleapis.com

以及如何使用 PATCH request的信息,应该如下所示:

修补 https://cloudscheduler.googleapis.com/v1/{job.name=projects/*/locations/*/jobs/*}

于 2019-04-16T14:03:49.840 回答
-1

首先,创建服务记录。然后粘贴服务记录。云调用程序中的名称。你的问题会解决的。否则,请查看此视频(“https://www.youtube.com/watch?v=t7e0dNSCmzI”)。

于 2021-03-24T20:30:31.237 回答