端点发现
注意
如需获得相关帮助,以了解设置页面的布局或解释后面的 AWS SDK 和工具支持表,请参阅了解本指南的设置页面。
SDK 使用端点发现来访问服务端点(用于访问各种资源的 URL),同时仍然可以使 AWS 灵活地根据需要更改 URL。这样,您的代码就可以自动检测新的端点。某些服务没有固定的端点。相反,您可以在运行时通过请求先获取端点来获得可用的端点。检索到可用端点后,代码会使用该端点访问其他操作。例如,对于 Amazon Timestream,SDK 会发出DescribeEndpoints请求以检索可用的端点,然后使用这些端点完成特定操作,例如CreateDatabase或CreateTable。
使用以下方法配置此功能:
endpoint_discovery_enabled- 共享 AWSconfig文件设置AWS_ENABLE_ENDPOINT_DISCOVERY- 环境变量aws.endpointDiscoveryEnabled:JVM 系统属性,仅适用于 Java/Kotlin- 要直接在代码中配置值,请直接查阅您的特定 SDK。
-
开启或关闭 DynamoDB 的端点发现功能。
端点发现在 Timestream 中为必需,而在 Amazon DynamoDB 中为可选。此设置的默认值为
true或false,具体取决于端点发现功能对于该服务是否为必需。对于 Timestream 请求的默认值为true,而对于 Amazon DynamoDB 请求的默认值为false。有效值:
-
true– 对于端点发现是可选的服务,SDK 应自动尝试发现端点。 -
false– 对于端点发现是可选的服务,SDK 不应自动尝试发现端点。
-
AWS SDK 和工具支持
以下 SDK 支持本主题中所述的功能和设置。所有部分例外情况均已注明。任何 JVM 系统属性设置都仅支持 适用于 Java 的 AWS SDK 和 适用于 Kotlin 的 AWS SDK。
| SDK | 支持 | 备注或更多信息 |
|---|---|---|
| AWS CLI v2 | 是 | |
| 适用于 C++ 的 SDK | 是 | |
| 适用于 Go V2 (1.x) 的 SDK |
是 | |
| 适用于 Go 1.x(V1)的 SDK | 是 | 要使用共享 config 文件设置,必须开启从配置文件加载的功能;请参阅会话。 |
| 适用于 Java 2.x 的 SDK | 是 | 适用于 Java 的 SDK 2.x 使用 AWS_ENDPOINT_DISCOVERY_ENABLED 作为环境变量名称。 |
| 适用于 Java 1.x 的 SDK | 部分 | 不支持 JVM 系统属性。 |
| 适用于 JavaScript 3.x 的 SDK | 是 | |
| 适用于 JavaScript 2.x 的 SDK | 是 | |
| 适用于 Kotlin 的 SDK | 是 | |
| 适用于 .NET 4.x 的 SDK | 是 | |
| 适用于 .NET 3.x 的 SDK | 是 | |
| 适用于 PHP 3.x 的 SDK | 是 | |
| 适用于 Python (Boto3) 的 SDK |
是 | |
| 适用于 Ruby 3.x 的 SDK | 是 | |
| 适用于 Rust 的 SDK | 部分 | 仅支持 Timestream。 |
| 适用于 Swift 的 SDK | 否 | |
| Tools for PowerShell V5 | 是 | |
| Tools for PowerShell V4 | 是 |