本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
調用,列出和刪除 AWS Lambda 功能
本節提供使用 AWS SDK for Java 2.x 與 Lambda 服務用戶端進行程式設計的範例。
叫用 Lambda 函數。
您可以透過建立LambdaClient
invoke
方法來叫用 Lambda 函式。建立InvokeRequest
若要將有效負載資料傳遞給函數,請建立包含資訊的SdkBytes
匯入
import software.amazon.awssdk.services.lambda.LambdaClient; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lambda.model.InvokeRequest; import software.amazon.awssdk.core.SdkBytes; import software.amazon.awssdk.services.lambda.model.InvokeResponse; import software.amazon.awssdk.services.lambda.model.LambdaException;
Code
下列程式碼範例示範如何叫用 Lambda 函數。
public static void invokeFunction(LambdaClient awsLambda, String functionName) { InvokeResponse res = null ; try { //Need a SdkBytes instance for the payload String json = "{\"Hello \":\"Paris\"}"; SdkBytes payload = SdkBytes.fromUtf8String(json) ; //Setup an InvokeRequest InvokeRequest request = InvokeRequest.builder() .functionName(functionName) .payload(payload) .build(); res = awsLambda.invoke(request); String value = res.payload().asUtf8String() ; System.out.println(value); } catch(LambdaException e) { System.err.println(e.getMessage()); System.exit(1); } }
請參閱(詳見)的完整實例
列出 Lambda 函數
構建一個Lambda Client
對象並調用其listFunctions
方法。此方法返回一個ListFunctionsResponse
functions
方法來返回對FunctionConfiguration
匯入
import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lambda.LambdaClient; import software.amazon.awssdk.services.lambda.model.LambdaException; import software.amazon.awssdk.services.lambda.model.ListFunctionsResponse; import software.amazon.awssdk.services.lambda.model.FunctionConfiguration; import java.util.List;
Code
下列 Java 程式碼範例示範如何擷取函數名稱清單。
public static void listFunctions(LambdaClient awsLambda) { try { ListFunctionsResponse functionResult = awsLambda.listFunctions(); List<FunctionConfiguration> list = functionResult.functions(); for (FunctionConfiguration config: list) { System.out.println("The function name is "+config.functionName()); } } catch(LambdaException e) { System.err.println(e.getMessage()); System.exit(1); } }
請參閱(詳見)的完整實例
刪除 Lambda 函數
構建一個LambdaClient
deleteFunction
方法。創建一個DeleteFunctionRequest
deleteFunction
方法。此物件包含資訊,例如要刪除的函數名稱。函數名稱顯示為 ARN:AWN:羊:美東-1:123456789012:功能:。HelloFunction您可以檢視中的函數來擷取值 AWS Management Console。
匯入
import software.amazon.awssdk.services.lambda.LambdaClient; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.lambda.model.DeleteFunctionRequest; import software.amazon.awssdk.services.lambda.model.LambdaException;
Code
下面的 Java 代碼演示了如何刪除一個 Lambda 函數。
public static void deleteLambdaFunction(LambdaClient awsLambda, String functionName ) { try { DeleteFunctionRequest request = DeleteFunctionRequest.builder() .functionName(functionName) .build(); awsLambda.deleteFunction(request); System.out.println("The "+functionName +" function was deleted"); } catch(LambdaException e) { System.err.println(e.getMessage()); System.exit(1); } }
請參閱(詳見)的完整實例