我可能对API的概念感到非常困惑,但我不理解如何将RESTGoogleAPI与Python一起使用
在API documentation上,它说要使用HTTP请求或客户机LIB(在Python、libcloud或Google API Python客户机库的情况下)。我看到了一些功能的示例,例如创建VM或附加磁盘
尽管如此,我找不到一个纯REST请求的示例,比如,如果我想创建一个定时快照
所以我有两个问题:
根据文档,应该是这样的请求:
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"]
}
}
有人能帮我更好地理解这一点吗
提前谢谢
这可能会让人困惑,但在谷歌云上有很好的文档记录,我鼓励大家阅读一下,了解更多细节
对于您描述的特定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方法请求|响应细节,这可以帮助您更好地了解发生了什么。就你而言:Google提供的库有两种类型。较旧的API客户端库和较新的云。见:
https://cloud.google.com/apis/docs/client-libraries-explained
API客户端库是机器生成的,您应该能够访问所有库的allAPI方法,这些方法适用于所有Google支持的语言
云客户端库是手工制作的(主要是手工制作的),这些库通常滞后于底层API
计算引擎没有云客户端库(适用于任何语言;如图所示!)。因此,您应该能够使用Python API客户端库调用beta ResourcePolicys
这就是说,您可能总是用自己喜欢的语言手工编写REST调用,但这是不鼓励的,因为它需要您自己管理auth等,这可能是一个挑战
是的,您可以从云函数进行(任何)REST调用,但如果支持服务需要身份验证,您将始终需要对调用进行身份验证
相关问题 更多 >
编程相关推荐