amazon-web-services - 如何从 SQS 指定 AWS Lambda 的输入?
问题描述
我创建了一个 lambda 函数,我想从 Amazon SQS 触发它。对于处理程序 (Event,Context) 中的事件值,我想从这个 SQS 中指定一个值。我想指定一个大的 JSON。我怎样才能做到这一点?
解决方案
从事件源发布的示例事件 - AWS Lambda中,Amazon SQS 会将此事件信息发送到 AWS Lambda 函数:
{
"Records": [
{
"messageId": "c80e8021-a70a-42c7-a470-796e1186f753",
"receiptHandle": "...",
"body": "{\"foo\":\"bar\"}",
"attributes": {
"ApproximateReceiveCount": "3",
"SentTimestamp": "1529104986221",
"SenderId": "594035263019",
"ApproximateFirstReceiveTimestamp": "1529104986230"
},
"messageAttributes": {},
"md5OfBody": "9bb58f26192e4ba00f01e2e7b136bbd8",
"eventSource": "aws:sqs",
"eventSourceARN": "arn:aws:sqs:us-west-2:594035263019:NOTFIFOQUEUE",
"awsRegion": "us-west-2"
}
]
SQS 消息的正文在body
参数中提供。
SQS 消息的最大大小为 256 KB,但我不确定您能否将这么大的内容传递给 Lambda。我建议你试试看!
在最坏的情况下,将内容存储在 Amazon S3 中并在消息中传递对 S3 对象的引用。
推荐阅读
- google-cloud-firestore - Angular firestore this.userCol.snapshotChanges() 不工作
- angular - 如何针对本质上是动态的 JSON 创建 Angular FORM?
- angular - Angular 6 HTTP拦截器未设置标头
- java - 如何使用 Xpath java 更新空节点值?
- excel - 键入 Excel VBA 时筛选组合框列表
- java - 无法导入导入 android.support.v7.widget.RecyclerView;
- javascript - 如何使用电子创建 Outlook 对象 - 新电子邮件?
- c# - 使用 Autofac 在我的组件类 Azure Functions 中注入 ILogger 实例
- php - 如何使用 htaccess 从 url 中隐藏目录名称?
- node.js - 输出显示未定义