gpt4 book ai didi

java - 如何在 Java 中本地触发现有的 AWS lambda?

转载 作者:行者123 更新时间:2023-11-30 10:01:39 24 4
gpt4 key购买 nike

截至目前,我有一个 API 和一个现有的 AWS Lambda,它们或多或少具有相同的功能。我试图做的不是在每个项目中执行相同的任务,而是试图让 API 本身暗示触发 lambda。目前,向它发送数据不是我最关心的问题,但那是我会尝试做的事情。也就是说,在 Java 中,如果您拥有所有凭据、lambda 名称等,是否可以在本地触发 AWS Lambda 并最终通过 API 触发?

我现在已经研究了一些解决方案,但似乎其中许多都涉及重新部署 lambda,或者完全创建一个新的。目前,我一直在使用这些资源,A , B , C , 和 D .

我的 API 中的当前函数看起来像这样。我的 lambda 中的那个,我们现在称之为 foobar-lambda,几乎是一样的。

public Entity<Foos> Foos(@RequestHeader(value= "ApiKey", required = false) String apiKey,
@RequestParam String data) {
Foos foos = FoosService.getFoos(data);
Entity<Foos> response = null;

if (foos != null) {
response = Entity.ok().body(foos);
} else {
response = new Entity<>(HttpStatus.NOT_FOUND);
}

return response;
}

我想把它改成这样:

void Entity<Foos> Foos(@RequestHeader(value= "ApiKey", required = false) String apiKey,
@RequestParam String data) {
triggerAndSend("foobar-lambda",data);
}

因此,在这种情况下,我试图弄清楚如何创建 void triggerAndSend(String lambdaTarget, Integer... data) 函数。理想情况下,我会运行它,并且我能够看到我的 lambda 被触发了。我是否必须在我的 Lambda 中添加一个额外的触发器来捕获这些?是否可行?如果可行,有人对我如何实现目标有任何建议吗?

最佳答案

AWS Blog post描述了一种执行您所描述的操作的方法:Invoking AWS Lambda Functions from Java .它涉及为返回值定义一个普通的旧 Java 对象和一个用于 lambda 函数的接口(interface)。

关于java - 如何在 Java 中本地触发现有的 AWS lambda?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57333270/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com