

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 术语表
<a name="glossary"></a>

**API 版本**  
服务拥有一个或多个 API 版本，您所用的版本指示哪些操作和参数有效。API 版本采用类似于日期的格式。例如，Amazon S3 的最新 API 版本为 `2006-03-01`。配置客户端对象时，[指定版本](guide_configuration.md#cfg-version)。

**客户端**  
客户端对象用于执行服务的操作。开发工具包中支持的每项服务都有一个对应的客户端对象。客户端对象具有与服务操作一一对应的方法。要开始使用客户端，请参阅[创建基本服务客户端](making-service-requests.md#creating-a-client)。

**命令**  
命令对象封装操作的执行。当您按照[发出请求](making-service-requests.md#executing-service-operations)部分所述执行服务操作时，将不会直接处理命令对象。可以使用客户端的 `getCommand()` 方法访问命令对象，以便使用开发工具包的高级功能，如并发请求和批处理。有关更多详细信息，请参阅 [适用于 PHP 的 AWS SDK 版本 3 中的命令对象](guide_commands.md)指南。

**处理程序**  
处理程序是一个将命令和请求实际转换为结果的函数。处理程序通常发送 HTTP 请求。处理程序可由中间件组成，以增强行为。处理程序是一个函数，它接受 `Aws\CommandInterface` 和 `Psr\Http\Message\RequestInterface`，并返回用 `Aws\ResultInterface` 执行或因 `Aws\Exception\AwsException` 原因而被拒绝的 Promise。

**JMESPath**  
 [JMESPath](http://jmespath.org/) 是一种针对类 JSON 数据的查询语言。适用于 PHP 的 AWS SDK 使用 JMESPath 表达式查询 PHP 数据结构。JMESPath 表达式可直接通过 `Aws\Result` 方法用于 `Aws\ResultPaginator` 和 `search($expression)` 对象。

**中间件**  
中间件是一类特殊的高级函数，可对传输命令的行为进行增强，并委托给“下一个”处理程序。中间件函数接受 `Aws\CommandInterface` 和 `Psr\Http\Message\RequestInterface`，并返回用 `Aws\ResultInterface` 执行或因 `Aws\Exception\AwsException` 原因而被拒绝的 Promise。

**操作**  
指的是服务 API 范围内的单个操作（如适用于 DynamoDB 的 `CreateTable`、适用于 Amazon EC2 的 `RunInstances`)。在开发工具包中，通过对相应服务的客户端对象调用相同名称的方法来执行操作。执行操作涉及准备 HTTP 请求并发送至服务以及解析响应。这种执行操作的过程由开发工具包通过**命令**对象提取。

**Paginator**  
某些 AWS 服务操作会分页，并以截断的结果进行响应。例如，Amazon S3 的 `ListObjects` 操作一次最多只能返回 1000 个对象。此类操作要求使用令牌（或标记）参数发出后续请求，以检索整个结果集。Paginator 是开发工具包的一种功能，充当此流程的抽象层，使开发人员能够更轻松地使用分页的 API。可通过客户端的 `getPaginator()` 方法访问它们。有关更多详细信息，请参阅 [适用于 PHP 的 AWS SDK 版本 3 中的 Paginator](guide_paginators.md) 指南。

**Promise**  
Promise 表示异步操作的最终结果。与 Promise 交互的主要方式是通过其 then 方法，该方式注册回调以接收 Promise 的最终值或无法执行该 Promise 的原因。

**区域**  
[一个或多个地理区域](https://docs.aws.amazon.com/general/latest/gr/rande.html)支持这些服务。每个区域的服务可能拥有不同的端点/URL，用于减少应用程序中的数据延迟。配置客户端对象时，[提供区域](guide_configuration.md#cfg-region)，以便开发工具包确定对该服务使用的端点。

**SDK**  
“开发工具包”一词既可指整个适用于 PHP 的 AWS SDK库，也可指 `Aws\Sdk` 类[（文档）](https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.Sdk.html)，充当每项**服务**的客户端对象的工厂。您还可以通过 `Sdk` 类提供一组应用于其所创建的所有客户端对象的[全局配置值](guide_configuration.md)。

**服务**  
参阅任何 AWS 服务（例如 Amazon S3、Amazon DynamoDB、AWS OpsWorks 等）的一般方式。每项服务在开发工具包中都有一个对应的**客户端**对象支持一个或多个 **API 版本**。每项服务还有一个或多个**操作**构成其 API。一个或多个**区域**支持这些服务。

**Signature**  
执行操作时，开发工具包使用您的凭证创建请求的数字签名。该服务随后将验证签名，然后再处理您的请求。签名过程由开发工具包封装，并使用您为客户端配置的凭证自动执行。

**Waiter**  
Waiter 是开发工具包的一种功能，使您能够更轻松地处理改变资源状态并且本质上具有*最终一致性*或*异步*的操作。例如，Amazon DynamoDB`CreateTable` 操作会立即发回响应，但要访问该表可能需要等待几秒钟。执行 Waiter 可让您一直等到资源进入特定状态（通过休眠和轮询资源的状态）。可使用客户端的 `waitUntil()` 方法访问 Waiter。有关更多详细信息，请参阅 [适用于 PHP 的 AWS SDK 版本 3 中的 Waiter](guide_waiters.md) 指南。

有关最新 AWS 术语，请参阅 AWS 一般参考 中的 [AWS 术语表](https://docs.aws.amazon.com/general/latest/gr/glos-chap.html)。