使用googlecloudapi和Python,使用libs创建计划sanpshot

2024-06-07 21:18:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我可能对API的概念感到非常困惑,但我不理解如何将RESTGoogleAPI与Python一起使用

API documentation上,它说要使用HTTP请求或客户机LIB(在Python、libcloud或Google API Python客户机库的情况下)。我看到了一些功能的示例,例如创建VM或附加磁盘

尽管如此,我找不到一个纯REST请求的示例,比如,如果我想创建一个定时快照

所以我有两个问题:

  1. 如何使用libs来验证和调用lib没有内置方法(如调度快照)的函数

根据文档,应该是这样的请求:

https://compute.googleapis.com/compute/v1/projects/{PROJECT_ID}/regions/{REGION_ID}/resourcePolicies

    {
        "name": "name",
        "snapshotSchedulePolicy": {
        "schedule": {
            "dailySchedule": {
            "startTime": "12:00",
            "daysInCycle": "1"
            }
        },
        "retentionPolicy": {
            "maxRetentionDays": "5"
        },
        "snapshotProperties": {
            "guestFlush": "False",
            "labels": {
            "env": "dev",
            "media": "images"
            },
            "storageLocations": ["US"]
        }
    }
  1. 我可以在云函数中使用API而不用担心获取令牌吗

有人能帮我更好地理解这一点吗

提前谢谢


Tags: 函数nameapiidhttp概念示例客户机
1条回答
网友
1楼 · 发布于 2024-06-07 21:18:45

这可能会让人困惑,但在谷歌云上有很好的文档记录,我鼓励大家阅读一下,了解更多细节

对于您描述的特定API方法:

https://cloud.google.com/compute/docs/reference/rest/beta/resourcePolicies/insert

此页面包括自己调用API方法的功能(请参见页面右侧)。这使用了最优秀的Google API浏览器,您也可以直接访问:

https://developers.google.com/apis-explorer

深入到计算引擎测试版:

https://cloud.google.com/compute/docs/reference/rest/beta/#rest-resource:-beta.resourcepolicies

另一个有用的(技巧)是使用 log-http标志发出(any)gcloud命令。这将包括作为命令基础的HTTP方法请求|响应细节,这可以帮助您更好地了解发生了什么。就你而言:

gcloud beta compute resource-policies ...  log-http

Google提供的库有两种类型。较旧的API客户端库和较新的云。见:

https://cloud.google.com/apis/docs/client-libraries-explained

API客户端库是机器生成的,您应该能够访问所有库的allAPI方法,这些方法适用于所有Google支持的语言

云客户端库是手工制作的(主要是手工制作的),这些库通常滞后于底层API

计算引擎没有云客户端库(适用于任何语言;如图所示!)。因此,您应该能够使用Python API客户端库调用beta ResourcePolicys

这就是说,您可能总是用自己喜欢的语言手工编写REST调用,但这是不鼓励的,因为它需要您自己管理auth等,这可能是一个挑战

是的,您可以从云函数进行(任何)REST调用,但如果支持服务需要身份验证,您将始终需要对调用进行身份验证

相关问题 更多 >

    热门问题