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

Node S3Client报错input.useDualstackEndpoint is not a function如何解决

问题原因

该错误由AWS SDK v3的各依赖包版本不匹配导致。AWS SDK v3采用模块化拆分发布规则,所有@aws-sdk/开头的关联包必须保持版本号一致,否则内部依赖的方法签名变更会触发调用异常。
你当前使用的@aws-sdk/client-s3版本为3.41.0,@aws-sdk/node-http-handler版本为3.40.0,两个依赖版本不一致,导致底层共同依赖的config-resolver包版本冲突,才会出现input.useDualstackEndpoint is not a function的报错。

解决方案
  • 首先统一所有@aws-sdk相关依赖的版本号,将package.json中的两个依赖版本调整为完全一致,示例如下:
"@aws-sdk/client-s3": "^3.41.0",
"@aws-sdk/node-http-handler": "^3.41.0"

你也可以选择将两个包都升级到最新的稳定版,只要保证版本号完全相同即可。

  • 删除项目本地的node_modules文件夹,以及包锁文件(package-lock.json或yarn.lock),重新执行npm install或yarn install安装依赖,确保所有@aws-sdk下的子依赖版本完全对齐。
  • 功能优化建议:ListObjectsCommand是旧版S3列出对象接口,更推荐使用你测试过的ListObjectsV2Command,返回结构更合理,性能也更优,版本对齐后两个接口都可以正常调用。
验证

重新打包部署Lambda函数后,调用S3列对象接口即可正常返回结果,不会再触发该类型错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 02:24:03