如何从Java代码调用AWS lambda函数/处理程序
我是AWS Lambda的新手,我已使用处理程序创建了Lambda函数
example.Orders::orderHandler
这是自定义处理程序,现在我想从我的Java程序中调用它,我需要如何做。
回答:
此类中的2种方法应该可以为您提供帮助。一种是用于需要传递有效负载的情况,另一种是用于有效负载为null的情况。
但是,您需要记住一件事:函数名称可能与处理程序不同(后者在example.Orders::orderHandler
)。调用其功能时
使用该处理程序名称。
因此,如果您有一个 “ myFunction” 的 在后台调用您的example.Orders::orderHandler
,那么您将在下面的run方法中传递该 。
import com.amazonaws.regions.Regions;import com.amazonaws.services.lambda.AWSLambdaAsyncClient;
import com.amazonaws.services.lambda.model.InvokeRequest;
import com.amazonaws.services.lambda.model.InvokeResult;
class LambdaInvoker {
public void runWithoutPayload(String region, String functionName) {
runWithPayload(region, functionName, null);
}
public void runWithPayload(String region, String functionName, String payload) {
AWSLambdaAsyncClient client = new AWSLambdaAsyncClient();
client.withRegion(Regions.fromName(region));
InvokeRequest request = new InvokeRequest();
request.withFunctionName(functionName).withPayload(payload);
InvokeResult invoke = client.invoke(request);
System.out.println("Result invoking " + functionName + ": " + invoke);
}
}
以上是 如何从Java代码调用AWS lambda函数/处理程序 的全部内容, 来源链接: utcz.com/qa/403922.html