下面是一个AWS无服务器Webpack与Lambda助手模块(Node.js)的解决方案,包含代码示例:
mkdir aws-lambda-example
cd aws-lambda-example
npm init -y
npm install aws-sdk webpack webpack-cli webpack-node-externals --save-dev
npm install aws-lambda --save
handler.js
:exports.handler = async (event, context) => {
try {
console.log('Received event:', JSON.stringify(event, null, 2));
return {
statusCode: 200,
body: JSON.stringify({
message: 'Hello, AWS Lambda!'
})
};
} catch (error) {
console.error('Error:', error);
return {
statusCode: 500,
body: JSON.stringify({
message: 'An error occurred'
})
};
}
};
webpack.config.js
:const path = require('path');
const slsw = require('serverless-webpack');
module.exports = {
entry: slsw.lib.entries,
target: 'node',
mode: 'production',
externals: [require('webpack-node-externals')()],
output: {
libraryTarget: 'commonjs',
path: path.join(__dirname, '.webpack'),
filename: '[name].js',
},
};
package.json
中添加构建命令:"scripts": {
"build": "webpack"
}
npm run build
serverless.yml
文件:service: my-service
provider:
name: aws
runtime: nodejs14.x
region: us-east-1
memorySize: 256
functions:
myFunction:
handler: .webpack/handler.handler
events:
- http:
path: my-function
method: get
npx serverless deploy
现在,你已经成功地将AWS无服务器Webpack与Lambda助手模块(Node.js)应用到你的项目中了。当你访问部署的Lambda函数的URL时,你将会看到返回的消息“Hello, AWS Lambda!”。
上一篇:AWS无服务器VPC子网创建