简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

控制 API 请求的输入变量

提供者 netapp-soumikd 下载此页面的 PDF

您可以通过 HTTP 请求中设置的参数和变量来控制 API 调用的处理方式。

HTTP 方法

下表显示了 SnapCenter REST API 支持的 HTTP 方法。

注 并非所有 HTTP 方法都可在每个 REST 端点使用。
HTTP 方法 Description

获取

检索资源实例或集合上的对象属性。

发布

根据提供的输入创建新的资源实例。

删除

删除现有资源实例。

PUT

修改现有资源实例。

请求标题

您应在 HTTP 请求中包含多个标头。

内容类型

如果请求正文包含 JSON ,则此标头应设置为 application/json

接受

此标题应设置为 application/json

Authorization

基本身份验证应设置为用户名和密码,并将其编码为 base64 字符串。

请求正文

请求正文的内容因具体调用而异。HTTP 请求正文包含以下内容之一:

  • 包含输入变量的 JSON 对象

筛选对象

发出使用 GET 的 API 调用时,您可以根据任何属性限制或筛选返回的对象。例如,您可以指定一个要匹配的精确值:

` <field>=< 查询值 >`

除了精确匹配之外,还可以使用其他运算符返回一组值范围内的对象。SnapCenter REST API 支持下表所示的筛选运算符。

运算符 Description

=

等于

<

小于

>

大于

小于或等于

>=

大于或等于

更新

不等于

*

贪婪的通配符

此外,您还可以在查询中使用 * null* 关键字或其 nation * ! null* 来根据是否设置了特定字段返回一组对象。

注 未设置的任何字段通常会从匹配查询中排除。

请求特定对象字段

默认情况下,使用 GET 发出 API 调用时,仅返回唯一标识一个或多个对象的属性。这组最小的字段可用作每个对象的密钥,并因对象类型而异。您可以通过以下方式使用 fields query 参数选择其他对象属性:

通用字段或标准字段

指定 * 字段 =* 以检索最常用的对象字段。这些字段通常保留在本地服务器内存中,或者几乎不需要处理即可访问。这些属性与使用带有 URL 路径密钥( UUID )的 GET 后为对象返回的属性相同。

所有字段

指定 * 字段 =* 可检索所有对象字段,包括需要额外服务器处理才能访问的字段。

自定义字段选择

使用 * 字段 =< 字段名称 >* 指定所需的确切字段。请求多个字段时,必须使用逗号分隔值,不能包含空格。

重要 作为最佳实践,您应始终确定所需的特定字段。您只能在需要时检索一组通用字段或所有字段。哪些字段归类为通用字段,并使用 _fields=* _ 返回,由 NetApp 根据内部性能分析确定。字段的分类可能会在未来版本中发生变化。

对输出集中的对象进行排序

资源收集中的记录将按对象定义的默认顺序返回。您可以使用 order_by 查询参数以及字段名称和排序方向更改顺序,如下所示:

order_by-=< 字段名称 > asc=desc

例如,您可以按降序对类型字段排序,然后按升序对 ID 排序:

order_by-type desc , id asc

  • 如果指定了排序字段,但未提供方向,则这些值将按升序排序。

  • 如果包含多个参数,则必须使用逗号分隔各个字段。

检索集合中的对象时分页

使用 GET 发出 API 调用以访问同一类型的一组对象时, SnapCenter 会根据两个限制尝试返回尽可能多的对象。您可以对请求使用其他查询参数来控制其中的每个限制。特定 GET 请求达到的第一个限制将终止该请求,因此会限制返回的记录数。

注 如果请求在迭代所有对象之前结束,则响应将包含检索下一批记录所需的链接。

限制对象数量

默认情况下, SnapCenter 最多为 GET 请求返回 10 , 000 个对象。您可以使用 max_records 查询参数更改此限制。例如:

max_records=20

根据相关时间限制以及系统中的对象总数,实际返回的对象数可以小于有效的最大数量。

限制检索对象所用的时间

默认情况下, SnapCenter 会在获取请求允许的时间内返回尽可能多的对象。默认超时为 15 秒。您可以使用 return_timeout 查询参数更改此限制。例如:

return_timeout=5

实际返回的对象数量可以小于有效的最大数量,具体取决于对对象数量以及系统中对象总数的相关限制。

缩小结果集的范围

如果需要,您可以将这两个参数与其他查询参数结合使用,以缩小结果集的范围。例如,以下内容最多返回在指定时间之后生成的 10 个 EMS 事件:

time⇒2018-04-04T15 : 41 : 29.140265Z&max_records=10

您可以通过问题描述发送多个请求来浏览各个对象。后续的每个 API 调用应根据最后一个结果集中的最新事件使用一个新的时间值。

大小属性

某些 API 调用以及某些查询参数使用的输入值为数字。您可以选择使用下表所示的后缀,而不是提供以字节为单位的整数。

后缀 Description

知识库

KB 千字节( 1024 字节)或千字节

MB

MB 兆字节( KB x 1024 字节)或兆字节

GB

GB 千兆字节( MB x 1024 字节)或吉字节

TB

TB TB TB TB TB ( GB x 1024 字节)或 TB

PB

PB PB PB PB ( TB x 1024 字节)或对等字节