4.5. RESTful Service Description Language(RSDL)
RESTful Service Description Language(RSDL)提供了在整个 XML 文件中的 REST API 中的结构和项描述。使用以下请求来调用 RSDL。
GET /api?rsdl HTTP/1.1 Accept: application/xml
GET /api?rsdl HTTP/1.1
Accept: application/xml
产生以下格式的 XML 文件:
项 | 描述 |
---|---|
description | RSDL 文件的描述。 |
version | API 版本(包括 major 版本、minor 版本、build 和 revision )。 |
schema | 到 XML schema(XSD)文件的链接。 |
links | 定义 API 中的每个 link 。 |
每个
link
项包括以下结构:
项 | 描述 |
---|---|
link | API 请求的 URI,它包括一个 URI 属性(href )和一个关系类型属性(rel )。 |
request | 定义了连接所需的请求属性。 |
http_method | 访问这个连接的方法类型,它包括 REST API 访问的标准 HTTP 方法:GET 、POST 、PUT 和 DELETE 。 |
headers | 定义 HTTP 请求的头。它包括一组 header 项,每个项中包括了一个头 name 和 value 来定义这个头。 |
body | 定义 HTTP 请求的内容。它包括一个资源 type 和 parameter_set (包括一组 parameter 项)。每个 parameter 项都包括了一个属性来指定这个项对于请求和数据 type 是否是必需的 ;这个项还包括了一个 name 项来定义要修改的 Red Hat Enterprise Virtualization Manager 属性。另外,如果 type 被设置为 collection ,还会有一个 parameter_set 子集。 |
response | 定义 HTTP 请求的输出。它包括一个 type 项来定义输出的资源结构。 |
在应用程序中使用 RSDL 作为一个方法,来映射控制 Red Hat Enterprise Virtualization 环境所需的所有连接和参数。