go - 一个 lambda 可以调用另一个 lambda,然后在子 lambda 完成之前退出吗?
问题描述
我有两个用 go 编写的 AWS lambda。一个 lambda 像这样调用另一个:
payload, err := json.Marshal(request)
if err != nil {
log.Printf("ERROR: could not marshal request [%v] into model.ChildLambdaRequest - %v\n", request, err)
return false
}
log.Printf("--- debug sending payload: %s", payload)
// Invoke Child
result, err := client.Invoke(&lambda.InvokeInput{
FunctionName: aws.String(lambdaName),
Payload: payload,
})
if err != nil {
log.Printf("ERROR: could not invoke Lambda function client [%v] - %v\n", lambdaName, err)
return false
}
子 lambda 完成如下:
return model.EventResponse{Success: true}, nil
我知道这是在做两件事:1.)它正在完成执行,2.)它正在返回一个值。有没有办法将这两个动作分开,以便我可以在顶部返回一个值,但在稍后完成执行?
解决方案
是的,您需要传递InvocationType: "Event"
给Invoke
呼叫,记录在这里。默认调用类型是RequestResponse
等待来自被调用 Lambda 的响应。
推荐阅读
- javascript - Join two arrays in to one - Javascript
- ios - crash_info_entry_0:CoreUI:释放 _CUIInternalLinkRendition ... Assets.car
- c# - 使用数组查询 cosmos 数据库以过滤文档
- colors - 在一组函数上应用调色板颜色
- php - 当表格为空时插入表格?
- flutter - 如何在 hive 对象中编写自定义类对象?
- python - 使用 ezdxf 界面从 Python 导出网格后无法在 Freecad 中显示网格
- python - 如何安装 \lib\runpy.py
- ionic-framework - 最后一列跳转到离子网格 Ionic 4 中的下一行
- elasticsearch - Kibana 服务器未就绪