A.4. 实例
A.4.1. 在 cURL 中使用 GET 请求
例 A.1. GET
请求
以下
GET
请求列出了 vms
集合中的虚拟机。请注意,GET
请求不包括正文(body)项。
GET /api/vms HTTP/1.1 Accept: application/xml
在 cURL 命令中使用方法(
GET
)、头数据(Accept: application/xml
)和 URI(https://[RHEVM-Host]:443/api/vms
):
$ curl -X GET -H "Accept: application/xml" -u [USER:PASS] --cacert [CERT] https://[RHEVM-Host]:443/api/vms
一个
vms
集合的表述会被显示。
A.4.2. 在 cURL 中使用 POST 请求
例 A.2. POST
请求
以下
POST
请求会在 vms
集合中创建一个虚拟机。请注意,POST
请求需要一个正文(body)。
POST /api/vms HTTP/1.1 Accept: application/xml Content-type: application/xml <vm> <name>vm1</name> <cluster> <name>default</name> </cluster> <template> <name>Blank</name> </template> <memory>536870912</memory> <os> <boot dev="hd"/> </os> </vm>
在 cURL 命令中使用方法(
POST
),头(Accept: application/xml
和 Content-type: application/xml
)、URI(https://[RHEVM-Host]:443/api/vms
)以及一个请求正文:
$ curl -X POST -H "Accept: application/xml" -H "Content-type: application/xml" -u [USER:PASS] --cacert [CERT] -d "<vm><name>vm1</name><cluster><name>default</name></cluster><template><name>Blank</name></template><memory>536870912</memory><os><boot dev='hd'/></os></vm>" https://[RHEVM-Host]:443/api/vms
REST API 创建一个新虚拟机,并显示资源的表述。
A.4.3. 在 cURL 中使用 PUT 请求
例 A.3. PUT
请求
以下
PUT
请求会更新一个虚拟机的内存。请注意,PUT
请求需要一个正文。
PUT /api/vms/082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1 Accept: application/xml Content-type: application/xml <vm> <memory>1073741824</memory> </vm>
在 cURL 命令中使用方法(
PUT
),标头(Accept: application/xml
和 Content-type: application/xml
)、URI(https://[RHEVM-Host]:443/api/vms/082c794b-771f-452f-83c9-b2b5a19c0399
)以及一个请求正文:
$ curl -X PUT -H "Accept: application/xml" -H "Content-type: application/xml" -u [USER:PASS] --cacert [CERT] -d "<vm><memory>1073741824</memory></vm>" https://[RHEVM-Host]:443//api/vms/082c794b-771f-452f-83c9-b2b5a19c039
REST API 更新了虚拟机的内存配置。
A.4.4. 在 cURL 中使用 DELETE 请求
例 A.4. DELETE
请求
以下
DELETE
请求会删除一个虚拟机资源。
DELETE /api/vms/082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1
在 cURL 命令中使用方法(
DELETE
)和 URI(https://[RHEVM-Host]:443/api/vms/082c794b-771f-452f-83c9-b2b5a19c0399
):
$ curl -X DELETE -u [USER:PASS] --cacert [CERT] https://[RHEVM-Host]:443//api/vms/082c794b-771f-452f-83c9-b2b5a19c039
REST API 删除了虚拟机。请注意,因为
DELETE
请求的结果是空,Accept: application/xml
对标头的需求是可选的。
A.4.5. 在 cURL 中使用带有正文的 DELETE 请求
例 A.5. 带有正文的 DELETE
请求
以下
DELETE
请求包括了一个正文来强制删除一个虚拟机。
DELETE /api/vms/082c794b-771f-452f-83c9-b2b5a19c0399 HTTP/1.1 Accept: application/xml Content-type: application/xml <action> <force>true</force> </action>
在 cURL 命令中使用方法(
DELETE
),标头(Accept: application/xml
和 Content-type: application/xml
)、URI(https://[RHEVM-Host]:443/api/vms/082c794b-771f-452f-83c9-b2b5a19c0399
)以及一个请求正文:
$ curl -X DELETE -H "Accept: application/xml" -H "Content-type: application/xml" -u [USER:PASS] --cacert [CERT] -d "<action><force>true</force></action>" https://[RHEVM-Host]:443//api/vms/082c794b-771f-452f-83c9-b2b5a19c039
REST API 强制删除虚拟机。