如何在 Java 中从另一个 aws lambda 调用 aws lambda 函数?

我有一个java代码,它返回一个整数值。例如:


public class Hello {


    public int myHandler(Object name, Context context) {


        int count = 5;

        return count;

    }

}

我已将此代码上传到 AWS 上,处理程序名称为 example.Hello::myHandler,函数名称为 us-east-2 区域下的 AWSLAMBDA。


现在我想用 Java 编写另一个代码,它调用早期代码的输出值(计数)。请注意,count 是一个整数。由于我在java和aws方面都是新手。请帮我解决这个问题,如果可能的话请提供一个简单的解释。


炎炎设计
浏览 108回答 2
2回答

白板的微信

这是aws sdk 的代码片段示例要异步调用函数,请将 InspirationType 设置为Event要同步调用函数,请将 InitationType 设置为RequestResponse(这是默认值)。调用 lambda 应该具有具有lambda:InvokeFunction执行操作的附加策略的角色。import com.amazonaws.regions.Regions;import com.amazonaws.services.lambda.AWSLambda;import com.amazonaws.services.lambda.AWSLambdaClientBuilder;import com.amazonaws.services.lambda.model.InvokeRequest;import com.amazonaws.services.lambda.model.InvokeResult;AWSLambda client = AWSLambdaClientBuilder.standard().build();InvokeRequest request = new InvokeRequest().withFunctionName("MyFunction").withInvocationType("RequestResponse").withLogType("Tail").withClientContext("MyApp")        .withPayload(ByteBuffer.wrap("fileb://file-path/input.json".getBytes())).withQualifier("1");InvokeResult response = client.invoke(request);

汪汪一只猫

除了 Java 代码之外,您还需要确保附加到 Lambda 函数的策略实际上能够调用第二个 Lambda 函数。否则,Java 代码片段将失败,因为调用 Lambda 缺少调用其他函数的权限
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java