D'autres exemples de AWS SDK sont disponibles dans le référentiel AWS Doc SDK Examples GitHub .
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation CreateRestApi avec un AWS SDK ou une CLI
Les exemples de code suivants illustrent comment utiliser CreateRestApi.
Les exemples d’actions sont des extraits de code de programmes de plus grande envergure et doivent être exécutés en contexte. Vous pouvez voir cette action en contexte dans les exemples de code suivants :
- CLI
-
- AWS CLI
-
Pour créer une API
Commande :
aws apigateway create-rest-api --name 'My First API' --description 'This is my first API'
Pour créer une API dupliquée à partir d’une API existante
Commande :
aws apigateway create-rest-api --name 'Copy of My First API' --description 'This is a copy of my first API' --clone-from 1234123412
- Java
-
- SDK pour Java 2.x
-
public static String createAPI(ApiGatewayClient apiGateway, String restApiId, String restApiName) {
try {
CreateRestApiRequest request = CreateRestApiRequest.builder()
.cloneFrom(restApiId)
.description("Created using the Gateway Java API")
.name(restApiName)
.build();
CreateRestApiResponse response = apiGateway.createRestApi(request);
System.out.println("The id of the new api is " + response.id());
return response.id();
} catch (ApiGatewayException e) {
System.err.println(e.awsErrorDetails().errorMessage());
System.exit(1);
}
return "";
}
- Python
-
- Kit SDK for Python (Boto3)
-
class ApiGatewayToService:
"""
Encapsulates Amazon API Gateway functions that are used to create a REST API that
integrates with another AWS service.
"""
def __init__(self, apig_client):
"""
:param apig_client: A Boto3 API Gateway client.
"""
self.apig_client = apig_client
self.api_id = None
self.root_id = None
self.stage = None
def create_rest_api(self, api_name):
"""
Creates a REST API on API Gateway. The default API has only a root resource
and no HTTP methods.
:param api_name: The name of the API. This descriptive name is not used in
the API path.
:return: The ID of the newly created API.
"""
try:
result = self.apig_client.create_rest_api(name=api_name)
self.api_id = result["id"]
logger.info("Created REST API %s with ID %s.", api_name, self.api_id)
except ClientError:
logger.exception("Couldn't create REST API %s.", api_name)
raise
try:
result = self.apig_client.get_resources(restApiId=self.api_id)
self.root_id = next(
item for item in result["items"] if item["path"] == "/"
)["id"]
except ClientError:
logger.exception("Couldn't get resources for API %s.", self.api_id)
raise
except StopIteration as err:
logger.exception("No root resource found in API %s.", self.api_id)
raise ValueError from err
return self.api_id
- SAP ABAP
-
- Kit SDK pour SAP ABAP
-
TRY.
oo_result = lo_agw->createrestapi(
iv_name = iv_api_name
iv_description = 'Sample REST API created by ABAP SDK' ).
DATA(lv_api_id) = oo_result->get_id( ).
MESSAGE 'REST API created with ID: ' && lv_api_id TYPE 'I'.
CATCH /aws1/cx_agwbadrequestex INTO DATA(lo_bad_request).
MESSAGE lo_bad_request->get_text( ) TYPE 'I'.
RAISE EXCEPTION lo_bad_request.
CATCH /aws1/cx_agwtoomanyrequestsex INTO DATA(lo_too_many).
MESSAGE lo_too_many->get_text( ) TYPE 'I'.
RAISE EXCEPTION lo_too_many.
CATCH /aws1/cx_agwunauthorizedex INTO DATA(lo_unauthorized).
MESSAGE lo_unauthorized->get_text( ) TYPE 'I'.
RAISE EXCEPTION lo_unauthorized.
ENDTRY.