如何在 AWS Lambda Nodejs 函数中执行 HTTP DELETE 请求

How to execute HTTP DELETE request in AWS Lambda Nodejs function

我正在尝试为将记录直接发送到 Elasticsearch 集群的 Firehose 流创建 AWS Lambda 转换函数。

目前,无法在 Firehose 流记录中指定 ES 文档 ID,因此会插入所有记录,甚至是重复记录。但是,Firehose 确实支持托管在 Lambda 中的转换函数,这给了我一个想法:

我的解决方案是创建一个 Lambda 转换函数,该函数在转换期间对每条记录执行对 Elasticsearch 的 DELETE 请求,然后返回所有未修改的记录,从而实现 "delete-insert" 行为(我可以接受记录消失很短的时间)。

然而,我对 Nodejs 知之甚少,即使这是一件如此简单的事情,我也不知道该怎么做。

是否有可用于 Lambda 的节点包我可以用来执行此操作? (最好是 AWS Elasticsearch API,但一个简单的 HTTP 包就可以了)。

我是否必须打包一些其他模块才能完成此操作?

像 Apex 这样的东西能帮我解决这个问题吗?我的首选语言是 Go,但到目前为止,我一直无法获得 apex 函数来执行或将任何内容记录到 Cloudwatch...

提前致谢。

看起来很简单,所以我想不需要框架。

Node.js 中的几行代码即可完成任务。 有两个包可以帮助你:

API 文档:https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html