0

我尝试使用https://cloud.google.com/compute/docs/reference/beta/instanceGroupManagers/deleteInstances删除实例,但它不起作用。

在请求正文中,我正在输入

{
  "instances": [
    "scaler-group-instance-1"
  ]
}

对于项目,我使用project-name-1

对于区域,我使用us-west1-a

例如我正在使用的GroupManagerscaling-group-manager

作为回应,我收到

{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "message" : "Invalid value for field 'instances[0]': 'scaler-group-instance-1'. The URL is malformed.",
    "reason" : "invalid"
  } ],
  "message" : "Invalid value for field 'instances[0]': 'scaler-group-instance-1'. The URL is malformed."
}

我也使用此代码片段在 Java 中尝试过此操作,并且还收到了400 Bad Request

String projectId = "project-name-1";
String zoneName = "us-west1-a";
String instanceGroupName = "scaling-group-manager";
List<String> instancesToDelete = new ArrayList<>();
instancesToDelete.add("scaler-group-instance-1");
InstanceGroupManagersDeleteInstancesRequest deleteInstancesRequest = new InstanceGroupManagersDeleteInstancesRequest().setInstances(instancesToDelete);
Compute.InstanceGroupManagers.DeleteInstances deleteInstances = compute.instanceGroupManagers().deleteInstances(projectId, zoneName, instanceGroupName, deleteInstancesRequest).execute();

我的请求有什么问题我没有看到吗?

4

1 回答 1

0

我发现了这个问题。此请求期望实例字符串是 URL 而不是实例名称。

该实例可以selfLink在 listInstances 请求的值中找到。

在请求中输入 selfLink URL 会导致服务器正确回复。

于 2017-04-10T21:13:43.520 回答