You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS SDK v3中使用sslEnabled配置参数?

在AWS SDK v3中替代sslEnabled的配置方式

在AWS SDK v2中,你可以通过顶层的sslEnabled参数控制客户端是否启用SSL,比如针对本地Kinesis服务的配置:

import { Kinesis } from "aws-sdk"; // v2

new Kinesis({
    endpoint: process.env.LOCALKINESISSTREAMENDPOINT,
    region: process.env.AWS_REGION,
    apiVersion: process.env.KINESIS_API_VERSION,
    sslEnabled: false, // required flag
})

而在AWS SDK v3中,这个顶层参数被移除了,替代方案有两种:

1. 使用tls配置项直接控制

初始化Kinesis客户端时,通过tls参数直接开启/禁用TLS,对应v2的sslEnabled:

import { KinesisClient } from "@aws-sdk/client-kinesis"; // v3

const kinesisClient = new KinesisClient({
  endpoint: process.env.LOCALKINESISSTREAMENDPOINT,
  region: process.env.AWS_REGION,
  tls: false, // 等价于v2的sslEnabled: false
});

2. 自定义HTTP处理器(精细控制)

如果需要更复杂的TLS配置(比如禁用证书验证),可以通过requestHandler配置自定义HTTP客户端:

import { KinesisClient } from "@aws-sdk/client-kinesis";
import { NodeHttpHandler } from "@aws-sdk/node-http-handler";
import https from "https";

const kinesisClient = new KinesisClient({
  endpoint: process.env.LOCALKINESISSTREAMENDPOINT,
  region: process.env.AWS_REGION,
  requestHandler: new NodeHttpHandler({
    httpsAgent: new https.Agent({
      rejectUnauthorized: false, // 适合本地无有效证书的场景
    }),
  }),
});

注意:如果你的本地Kinesis服务使用http://开头的endpoint,SDK会自动使用HTTP协议,无需额外设置tls: false。只有当endpoint是https://但需要跳过SSL验证时,才需要上述配置。

内容的提问来源于stack exchange,提问作者n9dhal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 18:12:35