为Lambda添加Serverless中间件遇Runtime.ImportModuleError问题求助
解决Serverless中间件模块找不到的问题
出现Runtime.ImportModuleError是因为中间件的模块路径配置错误,Serverless无法定位到指定的preAuth中间件模块。按以下步骤调整即可:
确认中间件文件结构
先核对preAuth中间件的文件位置,比如项目结构为:project-root/ ├── lambda/ │ ├── getRecordsFromRequestId/ │ │ └── index.js │ └── preAuth/ │ └── index.js └── serverless.yml则
preAuth的入口文件路径为lambda/preAuth/index.js。修正serverless.yml的中间件配置
将middleware中的preAuth.main替换为完整的相对路径,修改后的配置如下:getRecordsFromRequestId: handler: lambda/getRecordsFromRequestId/index.main timeout: 30 events: - http: path: /getRecordsFromRequestId method: get cors: true middleware: pre: - lambda/preAuth/index.main验证中间件的函数导出
确保preAuth/index.js中正确导出main函数:exports.main = async (event) => { // 中间件处理逻辑 return event; };
若你的中间件存放在项目根目录的middleware文件夹下,只需把路径改为middleware/preAuth/index.main即可。
内容的提问来源于stack exchange,提问作者zenish_84756
相关产品推荐
相关产品推荐

