问题描述
大多数Lambda运行时具有以下处理程序签名,该签名允许访问传递到Lambda的事件和上下文对象:
lambdaHandler(event,context){}
但是,Go Lambda处理程序的文档未遵循此约定,如下所示:https://docs.aws.amazon.com/lambda/latest/dg/golang-handler.html
问题:在使用Go Lambda运行时时,即试图在AWS CodeCommit Lambda触发器(https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-notify-lambda.html)中确定存储库URL时,如何访问事件对象?
解决方法
您的预期事件的类型为events.CodeCommitEvent
func handler(ctx context.Context,codeEvent events.CodeCommitEvent) {
for _,record := range codeEvent.Records {
// do you magic here.
}
}