当我使用Serverless Framework时,我在 handler.js 中看到了不同的骨架函数定义示例。在handler.js
- 版本 1:
module.exports.handler = async (event, context) => {...}
; - 版本 2:
module.exports.store = async event => {...}
- 版本 3:
module.exports.store = (event, context, callback) => {...}
版本 1 和版本 2 的相似之处在于它们都被定义为异步函数,唯一的区别是参数的数量,但为什么版本 2 可以完全忽略上下文呢?我假设 API-Gateway 无论如何都会将上下文参数传递给 lambda 函数,lambda 函数怎么能不定义参数?(这不会在 lambda 调用期间导致运行时错误吗?)
版本 3 以完全不同的范式定义,即不是异步函数,我认为这是旧版本无服务器框架生成的骨架函数。
有人可以在这里给我一些指导吗?