因此,我使用无服务器框架将该层上传到了AWS:
xs:int
我需要的库位于“ nodejs”目录中,其中放置了我的packages.json文件和所有“ node_modules”目录。到目前为止,一切看起来还不错,但是当我尝试运行使用“ node-webstormlibs”层的lambda时,得到的消息是:
service: webstorm-layer
provider:
name: aws
runtime: nodejs8.10
region: us-east-1
layers:
nodejs:
path: nodejs # path to contents on disk
name: node-webstormlibs # optional, Deployed Lambda layer name
description: JS shared libs for node
compatibleRuntimes:
- nodejs8.10
allowedAccounts:
- '*'
pg模块实际上存在于创建图层的zip文件中。然后,我对如何导入该层内部的模块存有疑问。在一些教程中,我看到了:
"errorMessage": "Cannot find module 'pg'",
一如既往,但在其他方面,我看到了:
import pg from "pg";
甚至:
import pg from "/opt/pg";
我不知道我的serverless.yml中的“ path:”选项是否正确。
在服务器中,路径为:
import pg from "/opt/nodejs/node_modules/pg";
更新
将所有内容都放在目录/ nodejs / node8中,就可以了。