我正在使用google cloud transfer api的node.js实用程序将数据从s3存储桶传输到我的Google Cloud存储桶
#1
storagetransfer.transferJobs.create(request, function (err, response)
一旦完成,我想继续使用一些功能。要检查转移Job的状态,有一个api
#2
storagetransfer.transferOperations.get(request, function(err, response)
这需要
var request = {
// The name of the operation resource.
name: 'transferOperations/my-transfer-operation',
auth: authClient,
};
作为参数。我似乎无法找到需要输入的值来代替“my-transfer-operation”
从“storagetransfer.transferJobs.create”收到的响应有一个{name:'transferJobs / 2469904309496821948'}的数据对象,但该值不适用于“my-transfer-operation”值。
我需要获得“my-transfer-operation”的值,它可以用一个参数来获取我的转移工作状态#2 api。
来源:https://cloud.google.com/storage-transfer/docs/reference/rest/v1/transferOperations/get
你可以使用transferOperations.list
,你可以测试here,请求name : 'transferOperations'
和filter : "{"project_id" : "<your-project-id>"}"
。
响应将包含一系列操作,其结构类似于
{
"operations": [
{
"name": "transferOperations/transferJobs-<id-from-transferJobName>-<another-id>",
"metadata": {
...
"status": "<some-status>", //e.g. IN_PROGRESS
...
},
...
并且包含您尝试使用的ID的长名称是您需要输入transferOperations.get的名称。您也可以直接从该响应中获取状态。