我有一个
serverless function
接受N
http
事件;
delivery:
handler: src/DeliveryHandler.handler
architecture: ${self:provider.architecture}
events:
- http:
path: /deliveries/cancel
method: post
cors: true
private: true
- http:
path: /deliveries/{id}
method: get
cors: true
private: true
我提出的解决方案是在默认处理程序上使用
switch
;
const handler = async (event) => {
switch (event.resource) {
case '/deliveries/cancel':
return doSomething(event)
case '/deliveries/{id}':
return doSomethingElse(event)
default:
return Promise.reject(new Error('Not found'))
}
}
是否可能,如果可以,我如何为每个事件定义不同的处理程序,以便避免在单个处理程序中出现
switch
?