0

虽然在 dynamodb/document 客户端上设置请求超时时遇到问题(使用 v2 SDK,如何为 AWS DocumentClient javascript SDK 设置默认超时),但我决定探索切换 v3 API,因为它具有一定的优势。

但是查看完整的客户端DynamoDB,更重要的是它的配置DynamoDBClientConfig,似乎没有办法控制整体请求超时。

而 v2 接口httpOptions(在引用的问题中似乎不起作用)v3 配置似乎没有任何控制,甚至没有定义单个请求在超时(和重试或其他)之前可能等待多长时间。

现在是否必须使用自定义 requestHandler 来实现?中是否有此示例代码node.js

4

1 回答 1

0

这个关于升级的链接似乎有一个例子,在关于httpOptions. 那里的示例中有一个明显的错字。直接看代码,很明显不需要指定代理(如果代理没有通过,则有默认值)——所以这个例子就足够了。

// Use default Https agent, but override the socket timeout
const requestHandler = new NodeHttpHandler({
  connectionTimeout: 30000,
  socketTimeout: 30000,
});

const options = {
  region: AWS_REGION,
  maxAttempts: 2,
  requestHandler, // Use handler with alternate settings for timeouts
};
export const dynamodbClient = new DynamoDB(options);

这个答案 - How do I set a timeout for AWS V3 Dynamo Clients - 还提供了建议如何执行此操作的信息。

于 2021-09-04T20:26:02.777 回答