如何为Serverless Lambda函数配置统一前缀的嵌套路由?
实现Serverless Lambda嵌套路由的方案
你可以通过给httpApi事件添加prefix属性,自动为路径加上/consumer前缀,无需手动在每个路径中重复编写。修改后的配置如下:
functions: consumer: name: consumer handler: consumer/create.handler events: - httpApi: path: /create method: post prefix: /consumer # 新增该行实现前缀自动拼接
配置完成后,你的接口端点就会自动变为/consumer/create。如果后续有更多同属consumer组的接口(比如/update、/delete),只需在对应函数的httpApi事件中添加相同的prefix: /consumer,就能统一路由前缀,避免重复劳动。
如果需要批量管理多个同组函数的前缀,还可以用Serverless的自定义变量统一维护:
custom: consumerPrefix: /consumer functions: consumerCreate: name: consumer-create handler: consumer/create.handler events: - httpApi: path: /create method: post prefix: ${self:custom.consumerPrefix} consumerUpdate: name: consumer-update handler: consumer/update.handler events: - httpApi: path: /update method: put prefix: ${self:custom.consumerPrefix}
后续要修改前缀时,只需调整custom中的变量值,无需逐个修改函数配置。
内容的提问来源于stack exchange,提问作者rudra
相关产品推荐
相关产品推荐

