構成は、slack => API Gateway => Lambda。
event を Decode
する必要がある。
func Handler(event events.APIGatewayProxyRequest) (Response, error) {
if err := ensureDecode(&event); err != nil {
panic(err)
}
fmt.Println(event.Body)
}
func ensureDecode(event *events.APIGatewayProxyRequest) error {
if event.IsBase64Encoded {
body, err := base64.StdEncoding.DecodeString(event.Body)
if err != nil {
return err
}
event.Body = string(body)
event.IsBase64Encoded = false
}
return nil
}