示例六:配置VPC资源标签
操作场景
本章节指导用户通过调用API来配置和管理VPC的资源标签,包含标签的创建、查询和删除。
前提条件
已创建VPC,并获取VPC的ID,具体请参见创建VPC和子网。
当您使用Token认证方式完成认证鉴权时,需要获取用户Token并在调用接口时增加“X-Auth-Token”到业务接口请求消息头中。Token认证,具体操作请参考认证鉴权。
 
   通过IAM服务获取到的Token有效期为24小时,需要使用同一个Token鉴权时,可以先将Token缓存,避免频繁调用。
操作步骤
- 创建某个VPC的单个标签。 
     
- 发送“POST https://VPC的Endpoint/v2.0/{project_id}/vpcs/{vpc_id}/tags”,project_id为项目ID,vpc_id为VPC ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 在Request Body中传入参数如下。 
       
{ "tag": { "key": "key-test", "value": "value-test" } } - 查看请求响应结果。
 
 
- 查询某个VPC的所有标签。 
     
- 发送“GET https://VPC的Endpoint/v2.0/{project_id}/vpcs/{vpc_id}/tags”,project_id为项目ID,vpc_id为VPC ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 查看请求响应结果。 
       
- 请求成功时,响应消息如下,可以看到第1步创建的tag,同时响应消息中的tags是列表类型,可能包含多个tag。 
         
{ "tags": [ { "key": "key-test", "value": "value-test" } ] } - 请求异常时,错误码请参见错误码。
 
 - 请求成功时,响应消息如下,可以看到第1步创建的tag,同时响应消息中的tags是列表类型,可能包含多个tag。 
         
 
 - 删除某个VPC的单个标签。
 - 批量创建某个VPC的多个标签。 
     
- 发送“POST https://VPC的Endpoint/v2.0/{project_id}/vpcs/{vpc_id}/tags/action”,project_id为项目ID,vpc_id为VPC ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 在Request Body中传入参数如下,创建标签时指定action为create。 
       
{ "action": "create", "tags": [ { "key": "key-1", "value": "value-1" }, { "key": "key-2", "value": "value-2" } ] } - 查看请求响应结果。
 
 - 批量删除某个VPC的多个标签。 
     
- 发送“POST https://VPC的Endpoint/v2.0/{project_id}/vpcs/{vpc_id}/tags/action”,project_id为项目ID,vpc_id为VPC ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 在Request Body中传入参数如下,删除标签时指定action为delete。 
       
{ "action": "delete", "tags": [ { "key": "key-1", "value": "value-1" }, { "key": "key-2", "value": "value-2" } ] } - 查看请求响应结果。
 
 - 用标签过滤查询VPC资源实例详情。 
     
- 发送“POST https://VPC的Endpoint/v2.0/{project_id}/vpcs/resource_instances/action”,project_id为项目ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 在Request Body中传入参数如下,过滤查询标签详情时指定action为filter。 
       
{ "action": "filter", "limit": 100, "offset": 0, "matches": [ { "key": "resource_name", "value": "vpc" } ], "tags": [ { "key": "key-1", "values": [ "value-1" ] } ] } - 查看请求响应结果。 
       
- 请求成功时,响应消息如下。 
         
{ "resources": [ { "resource_name": "vpc-jhc-test", "resource_id": "992ad4b2-35c1-4f8a-8dd0-caf8a7a7ec03", "resource_detail": "", "tags": [ { "key": "key-1", "value": "value-1" }, { "key": "key-2", "value": "value-2" }, { "key": "key-test", "value": "value-test" } ] } ], "total_count": 1 } - 请求异常时,错误码请参见错误码。
 
 - 请求成功时,响应消息如下。 
         
 
 - 用标签过滤查询VPC资源实例数量。 
     
- 发送“POST https://VPC的Endpoint/v2.0/{project_id}/vpcs/resource_instances/action”,project_id为项目ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 在Request Body中传入参数如下,过滤查询标签详情时指定action为count。 
       
{ "action": "count", "matches": [ { "key": "resource_name", "value": "vpc" } ], "tags": [ { "key": "key-1", "values": [ "value-1" ] } ] } - 查看请求响应结果。 
       
- 请求成功时,响应消息如下。 
         
{ "total_count": 1 } - 请求异常时,错误码请参见错误码。
 
 - 请求成功时,响应消息如下。 
         
 
 - 查询租户在指定区域的所有VPC标签。 
     
- 发送“GET https://VPC的Endpoint/v2.0/{project_id}/vpcs/tags”,project_id为项目ID。
 - 在Request Header中增加“X-Auth-Token”。
 - 查看请求响应结果。 
       
- 请求成功时,响应消息如下。 
         
{ "tags": [ { "key": "key-1", "values": [ "value-1" ] }, { "key": "key-2", "values": [ "value-2" ] }, { "key": "key-test", "values": [ "value-test" ] } ] } - 请求异常时,错误码请参见错误码。
 
 - 请求成功时,响应消息如下。