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

如何解决Node.js中‘S3Client is not a constructor’错误?

解决S3Client is not a constructor错误

问题根源

  1. 你直接通过require('@aws-sdk/client-s3')获取的是整个模块对象,而非S3Client构造函数本身;
  2. 代码中region参数存在语法错误(多了一个多余的反引号)。

修复方案

1. 正确解构获取S3Client

AWS SDK v3的CommonJS导出为包含命名成员的对象,需通过解构赋值提取S3Client:

const { S3Client } = require('@aws-sdk/client-s3');

2. 修正region参数的语法错误

移除us-east-1末尾的多余反引号:

region: 'us-east-1',

修复后的完整代码

const { S3Client } = require('@aws-sdk/client-s3');
const s3 = new S3Client({
    region: 'us-east-1',
    credentials: {
        accessKeyId: 'test',
        secretAccessKey: 'test'
    }
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 13:39:51