适用于 JavaScript 的 AWS SDKV3 API 参考指南详细描述了 适用于 JavaScript 的 AWS SDK 版本 3 (V3) 的所有 API 操作。
客户端构造函数
此列表通过 v2 配置参数编制索引。
-
-
v2:当服务接受有效载荷主体时(目前仅 S3 支持),是否计算有效载荷主体的 MD5 校验和。
-
v3:适用的 S3 命令(PutObject、PutBucketCors 等)将自动计算请求有效载荷的 MD5 校验和。您也可以在命令的
ChecksumAlgorithm参数中指定其他校验和算法,以使用不同的校验和算法。更多信息请参阅 S3 功能公告。
-
-
-
v2:解析响应数据时是否转换类型。
-
v3:已弃用。此选项被视为不具备类型安全特性,因为它不会转换 JSON 响应中的转换时间戳或 base64 二进制文件等类型。
-
-
-
v2:是否应用时钟偏差校正和重试因客户端时钟偏差导致失败的请求。
-
v3:已弃用。SDK 始终应用时钟偏差校正。
-
-
-
v2:以毫秒为单位的偏差值,适用于所有签名时间。
-
v3:无变更。
-
-
-
v2:用于对请求进行签名的 AWS 凭证。
-
v3:无变更。该函数也可以是用于返回凭证的异步函数。如果该函数返回
expiration (Date),则系统在过期日期临近时将再次调用该函数。有关AwsAuthInputConfig凭证的详细信息,请参阅 v3 API 参考。
-
-
-
v2:存储来自端点发现操作的端点的全局缓存大小。
-
v3:无变更。
-
-
-
v2:是否动态调用由服务提供的端点操作。
-
v3:无变更。
-
-
-
v2:是否将请求参数编入主机名前缀。
-
v3:已弃用。SDK 会在必要时始终自动注入主机名前缀。
-
-
一组要传递给底层 HTTP 请求的选项。在 v3 中,这些选项的聚合方式有所不同。您可以通过提供新的
requestHandler对其进行配置。以下是在 Node.js 运行时设置 http 选项的示例。您可以在 NodeHttpHandler 的 v3 API 参考中找到更多信息。默认情况下,所有 v3 请求都使用 HTTPS。您只需提供自定义的 httpsAgent。
const { Agent } = require("https"); const { Agent: HttpAgent } = require("http"); const { NodeHttpHandler } = require("@smithy/node-http-handler"); const dynamodbClient = new DynamoDBClient({ requestHandler: new NodeHttpHandler({ httpsAgent: new Agent({ /*params*/ }), connectionTimeout: /*number in milliseconds*/, socketTimeout: /*number in milliseconds*/ }), });如果您要传递的是使用 http 的自定义端点,则需提供 httpAgent。
const { Agent } = require("http"); const { NodeHttpHandler } = require("@smithy/node-http-handler"); const dynamodbClient = new DynamoDBClient({ requestHandler: new NodeHttpHandler({ httpAgent: new Agent({ /*params*/ }), }), endpoint: "http://example.com", });如果客户端在浏览器中运行,则可使用另一组选项。您可以在 FetchHttpHandler 的 v3 API 参考中找到更多信息。
const { FetchHttpHandler } = require("@smithy/fetch-http-handler"); const dynamodbClient = new DynamoDBClient({ requestHandler: new FetchHttpHandler({ requestTimeout: /* number in milliseconds */ }), });httpOptions的每个选项说明如下:-
proxy-
v2:用于代理请求的 URL。
-
v3:您可以遵循 Configuring proxies for Node.js 中的说明,设置具有代理程序的代理。
-
-
agent-
v2:用于执行 HTTP 请求的代理对象。用于连接池。
-
v3:您可以按照上述示例配置
httpAgent或httpsAgent。
-
-
connectTimeout-
v2:将套接字设置为在连接服务器失败后经过
connectTimeout毫秒后超时。 -
v3:
connectionTimeout可在NodeHttpHandler选项中使用。
-
-
timeout-
v2:请求在自动终止前可以耗费的毫秒数。
-
v3:
socketTimeout可在NodeHttpHandler选项中使用。
-
-
xhrAsync-
v2:SDK 是否发送异步 HTTP 请求。
-
v3:已弃用。请求始终为异步。
-
-
xhrWithCredentials-
v2:设置 XMLHttpRequest 对象的“withCredentials”属性。
-
v3:不可用。SDK 继承默认的获取配置
。
-
-
-
-
v2:用于响应
.write()(如流)或.log()(如控制台对象)调用的对象,用于记录请求相关信息。 -
v3:无变更。v3 提供更精细的日志。
-
-
-
v2:服务请求中允许跟随的重定向最大次数。
-
v3:已弃用。SDK 不会跟随重定向,以避免意外的跨区域请求。
-
-
-
v2:服务请求可执行的最大重试次数。
-
v3:已更改为
maxAttempts。更多信息请参阅 RetryInputConfig 的 v3 API 参考。请注意,maxAttempts应设置为maxRetries + 1。
-
-
-
v2:是否应在发送请求前根据操作描述对输入参数进行验证。
-
v3:已弃用。SDK 在运行时不会在客户端进行验证。
-
-
-
v2:要向其发送服务请求的区域。
-
v3:无变更。它也可以是用于返回区域字符串的异步函数。
-
-
-
v2:一组选项,用于配置可重试错误的重试延迟。
-
v3:已弃用。SDK 通过
retryStrategy客户端构造函数选项支持更灵活的重试策略。更多信息请参阅 v3 API 参考。
-
-
-
v2:提供的端点是否指向单个存储桶(如果其地址为根 API 端点,则为 false)。
-
v3:已更改为
bucketEndpoint。更多信息请参阅 bucketEndpoint 的 v3 API 参考。请注意,当设置为true时,需在Bucket请求参数中指定请求端点,原始端点将被覆盖。而在 v2 中,客户端构造函数中的请求端点会覆盖Bucket请求参数。
-
-
-
v2:使用签名版本 v4 时是否禁用 S3 正文签名。
-
v3:已重命名为
applyChecksum。
-
-
-
v2:是否强制为 S3 对象使用路径类型 URL。
-
v3:已重命名为
forcePathStyle。
-
-
-
v2:是否使用请求资源 ARN 推断出的区域覆盖请求区域。
-
v3:已重命名为
useArnRegion。
-
-
-
v2:当区域设置为“us-east-1”时,是将 s3 请求发送到全局端点还是“us-east-1”区域端点。
-
v3:已弃用。当区域设置为
us-east-1时,S3 客户端将始终使用区域端点。您可以将区域设置为aws-global,以向 S3 全局端点发送请求。
-
-
-
v2:是否缓存用于签署请求的签名(覆盖 API 配置)。
-
v3:已弃用。SDK 始终缓存哈希签名密钥。
-
-
-
v2:用于签署请求的签名版本(覆盖 API 配置)。
-
v3:已弃用。v2 SDK 中支持的签名 V2 已被 AWS 弃用。v3 仅支持签名 v4。
-
-
-
v2:是否为请求启用 SSL。
-
v3:已重命名为
tls。
-
-
-
v2:是将 sts 请求发送到全局端点还是区域端点。
-
v3:已弃用。如果设置为特定区域,STS 客户端将始终使用区域端点。您可以将区域设置为
aws-global,以向 STS 全局端点发送请求。
-
-
-
v2:是否在 S3 服务中使用加速端点。
-
v3:无变更。
-