restclient
语法
restclient -uri
URI
[options]
restclient -type
TYPE
[options]
restclient -t
restclient -time
说明
与本地 RESTful API 服务交互。restcli
命令是此命令的一个内部别名。
资源选择选项
操作
-m 方法
使用指定的方法发送 HTTP 请求。有效的值为:
GET/POST/PUT/PATCH/DELETE
。-g [PROPERTY...]
获取整个资源或资源中的特定属性。该选项默认使用
-m GET
。-s PROPERTY=VALUE
为资源属性指定一个值。该选项默认使用
-m PATCH
并自动生成请求内容。-t
列出所有资源类型。
-time
以 ISO 8601 UTC 格式显示 RESTful 时间。
常规选项
-i FILE
在请求内容中发送特定文件的内容。
-o FILE
将 JSON 响应正文写入到使用 ASCII 编码的指定文件。仅对整个资源的 GET(
-g
或-m GET
)有效,其他将忽略。当资源超过 16 Kb 时,请使用此参数。-c
尽可能使用缓存的 GET 请求内容。该选项可以提高性能,但可能会返回过时的数据。
用法
URI 必须以根资源开头,不包含前导斜杠。例如:rest/v1/Systems
。
TYPE
是一个 TypeName.X.Y.Z
格式的字符串,其中,X、Y、Z
分别是主要、次要和勘误类型版本。如果省略部分(或全部)版本说明符,则改用通配符匹配。此外,指定次要和勘误版本的 TYPE
还与具有更大值的资源匹配,因为将与它们保持向后兼容。
PROPERTY
区分大小写,可以添加“/”分隔符以选择嵌套的属性。-s
选项不能接受嵌套的属性。
VALUE
可以表示 JSON(对象、数组、null 等)。不需要用引号将字符串值引起来,但为了保留空格除外。
FILE
的内容必须是有效的 JSON。
示例
获取根资源:
Shell> restclient -uri redfish/v1 -g
从 BIOS
资源中获取 AdminName
属性:
Shell> restclient -uri redfish/v1/Systems/1/Bios -g Attributes/AdminName
从 iScsi
资源中获取 iSCSIInitiatorName
属性:
Shell> restclient -uri redfish/v1/Systems/1/Bios/iScsi -g iSCSIInitiatorName
从 ComputerSystem
资源中获取系统 ROM 版本:
Shell> restclient -type ComputerSystem -g Oem/Hpe/Bios/Current
设置 BIOS
资源的 AdminName
属性:
Shell> restclient -uri redfish/v1/Systems/1/Bios/Settings
-s Attributes/AdminName=\"First Last\"
设置 iScsi
资源的 iSCSIInitiatorName
属性:
Shell> restclient -uri redfish/v1/Systems/1/Bios/Settings
-s iSCSIInitiatorName=\"InitiatorName\"
发送 POST
请求:
Shell> restclient -uri redfish/v1/Systems/1 -m POST -i PostData.json
将响应正文写入文件:
restclient -uri redfish/v1/Managers/1 -m GET -o Managers1.json