在 AWS Lambda/NodeJS 运行时中,我尝试从绝对路径 ( /opt/nodejs/node_modules/puppeteer
) 导入。
Source 在本地运行良好,但一旦与 Webpack/serverless-webpack 捆绑并在 AWS Lambda 中运行,require('puppeteer')
结果如下:
{"errorMessage":"Cannot find module 'puppeteer'","errorType":"Error","stackTrace":["webpackMissingModule (/var/task/src/render/handler.js:643:89)","/var/task/src/render/handler.js:643:173","next (native)","step (/var/task/src/render/handler.js:608:191)","/var/task/src/render/handler.js:608:361"]}
我检查过:
- AWS Lambda 层安装在
/opt
. - 路径
/opt/nodejs/node_modules/puppeteer
确实存在。 NODE_PATH
正确地包括/opt/nodejs/node_modules