2.4. 使用链接
API 作为链接定义的一些类型属性。此惯例表示在检索该对象的表示时通常不会填充这些值。相反,会返回一个链接。例如,在检索虚拟机时,来自服务器的 XML 响应包括 < link>
属性:
<vm id="123" href="/ovirt-engine/api/vms/123"> <name>vm1</name> <link rel="diskattachments" href="/ovirt-engine/api/vms/123/diskattachments/> ... </vm>
vm.diskattachments
的链接不包含实际的磁盘附加。要获取数据,Connection
类提供了一个 后续_link
方法,它使用 href
XML 属性的值来检索实际数据。例如,要检索虚拟机磁盘详情,请按照磁盘附加链接,然后访问每个磁盘:
# Retrieve the virtual machine: vm = vm_service.get() # Follow the link to the disk attachments, and then to the disks: attachments = connection.follow_link(vm.disk_attachments) for attachment in attachments: disk = connection.follow_link(attachment.disk) print("disk.alias: " % disk.alias)