由于SDK 的加载方式, AWS SDK for node.js 无法通过browserify运行
我想包含一个较新版本的 AWS SDK for node,然后包含在 lambda 中,但我还想优化(通过 browserify)我的 lambda node.js 代码。
我该如何解决这个问题?
由于SDK 的加载方式, AWS SDK for node.js 无法通过browserify运行
我想包含一个较新版本的 AWS SDK for node,然后包含在 lambda 中,但我还想优化(通过 browserify)我的 lambda node.js 代码。
我该如何解决这个问题?
JAWS AWS 模块系统(又名 awsm)允许通过 awsm.json 元数据文件中的一个属性实现此功能,该属性指定如何打包 lambda 代码。
特别是在 awsm.json 规范的lambda 配置选项部分中定义的lambda.package.optimize.exclude
和。lambda.package.optimize.includePaths
该exclude
属性指定应该从优化过程中排除的节点模块(在幕后它只是使用browserify exclude)。在exclude
属性中您只需指定['aws-sdk']
. 然后,您必须告诉 JAWSaws-sdk
通过将其路径放入 .zip 中来将其包含在 zip 中includePaths
。
该includePaths
属性是相对于back
目录的路径列表,这些路径在部署之前按原样拉入 zip 文件。
有关完整示例,请参阅awsm 示例