23.3. 关联标签
23.3.1. 为主机、用户或虚拟机附加标签 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
host、user 或 vms 中的 link rel="tags" 代表了附加到它们上面的标签。
这些
tag 表述也包括了一个 host id、user id 或 vm id 来代表附加了这个标签的主机、用户或虚拟机。
通过对某个对象的集合发送一个带有标签标识(标签
id 或 name)的 POST 请求来为这个对象附加标签。
例 23.2. 为一个虚拟机附加标签
POST /api/vms/5114bb3e-a4e6-44b2-b783-b3eea7d84720/tags HTTP/1.1
Accept: application/xml
Content-Type: application/xml
<tag>
<name>Finance</name>
</tag>
HTTP/1.1 201 Created
Content-Type: application/xml
<tag id="f436ebfc-67f2-41bd-8ec6-902b6f7dcb5e"
href="/api/vms/5114bb3e-a4e6-44b2-b783-b3eea7d84720/tags/
f436ebfc-67f2-41bd-8ec6-902b6f7dcb5e">
<name>Finance</name>
<description>Resources for the Finance department</description>
<vm id="5114bb3e-a4e6-44b2-b783-b3eea7d84720"
href="/api/vms/5114bb3e-a4e6-44b2-b783-b3eea7d84720"/>
</tag>
23.3.2. 删除标签 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
使用对集合中的相应项的
DELETE 请求删除和这个项相关联的标签。
例 23.3. 从虚拟机上删除标签
DELETE /api/vms/5114bb3e-a4e6-44b2-b783-b3eea7d84720/tags/f436ebfc-67f2-41bd-8ec6-902b6f7dcb5e HTTP/1.1
HTTP/1.1 204 No Content
23.3.3. 对带有标签的资源进行查询 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要对附加了特定标签的资源进行查询,可以使用相应集合的
collection/search URI 模板,搜索的条件是 tag=MyTag。
例 23.4. 对带有标签的资源进行查询
GET /api/vms?search=tag%3DFinance HTTP/1.1
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
<vms>
<vm id="5114bb3e-a4e6-44b2-b783-b3eea7d84720"
href="/api/vms/5114bb3e-a4e6-44b2-b783-b3eea7d84720">
...
</vm>
...
</vms>