0

由于在 AWS lambda 上使用 HTTP 和 REST api 需要额外的成本,我想知道我是否可以让 AWS Lambda 在不需要这些 HTTP API 服务的情况下接收获取和发布。

在这个例子中,它似乎是可能的:

https://github.com/serverless/examples/tree/master/aws-node-simple-http-endpoint

4

2 回答 2

2

您将需要使用 API Gateway 来公开您的 lambda。您的示例实际上是使用 API 网关,因为终端节点是 execute-api.us-east-1.amazonaws.com,即 Amazon API Gateway 数据平面。

只是要清楚; 如果您需要在外部公开 Lambda,则需要使用 API Gateway。如果需要在内部调用 Lambda,则不需要 API GW。

最好的祝福

于 2021-04-28T15:47:15.340 回答
1

Lambda 还公开了所有语言的客户端 API。因此,您可以使用客户端 API 调用 Lambda 函数(如果您愿意,请不要使用 API Gateway)。例如,假设您希望能够从 Java Web 应用程序调用 Lambda 函数。在这种情况下,您可以使用 LambdaClient 对象来执行此操作。你可以在这里找到一个例子:

https://github.com/awsdocs/aws-doc-sdk-examples/blob/master/javav2/example_code/lambda/src/main/java/com/example/lambda/LambdaInvoke.java

于 2021-04-28T15:57:39.340 回答