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

Quasar+Vue.js集成AWS Amplify构建报错:'request'未导出求解决

解决Quasar + AWS Amplify构建时@aws-sdk的'request'导出错误

以下是针对该错误的几种可行解决方案,按推荐优先级排序:

方案1:使用Node标准库Polyfill插件

该方案直接补全Vite浏览器环境缺失的Node模块,是最通用的解法:

  1. 安装依赖插件:
npm install vite-plugin-node-stdlib-browser --save-dev
  1. 修改quasar.config.js,配置Vite插件:
import nodeStdlibBrowser from 'vite-plugin-node-stdlib-browser'

export default configure(function (ctx) {
  return {
    // ...其他配置
    build: {
      vite: {
        plugins: [
          nodeStdlibBrowser()
        ],
        resolve: {
          alias: {
            util: 'util/'
          }
        }
      }
    }
  }
})

方案2:调整Vite的依赖优化与外部化配置

通过修改Quasar的Vite配置,避免@aws-sdk相关模块被错误外部化:
修改quasar.config.js的build.vite部分:

export default configure(function (ctx) {
  return {
    // ...其他配置
    build: {
      vite: {
        optimizeDeps: {
          include: ['@aws-sdk/credential-provider-imds']
        },
        resolve: {
          alias: {
            './runtimeConfig': './runtimeConfig.browser'
          }
        },
        ssr: {
          noExternal: ['@aws-sdk/credential-provider-imds', 'aws-amplify']
        }
      }
    }
  }
})

方案3:锁定@aws-sdk相关版本

部分新版本的@aws-sdk依赖引入了该问题,可通过锁定版本规避:

  1. 安装版本锁定工具(npm环境):
npm install npm-force-resolutions --save-dev
  1. 在package.json中添加版本锁定规则:
"resolutions": {
  "@aws-sdk/credential-provider-imds": "3.188.0"
}
  1. 新增预安装脚本确保规则生效:
"scripts": {
  "preinstall": "npx npm-force-resolutions"
}
  1. 重新安装依赖:
npm install

方案4:降级aws-amplify版本

如果上述方案均不生效,可尝试降级到已知兼容的aws-amplify版本:

npm install aws-amplify@4.3.20

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 13:35:23