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.
Utilisez un JavaScript SDK généré par API Gateway pour REST API
La procédure suivante montre comment utiliser un JavaScript SDK produit généré par API Gateway.
Note
Ces instructions supposent que vous avez déjà suivi les instructions de Générer SDKs pour REST APIs dans API Gateway.
Important
Si vous API n'avez défini que ANY des méthodes, le SDK package généré ne contiendra pas de apigClient.js
fichier et vous devrez définir les ANY méthodes vous-même.
Pour installer, lancer et appeler un fichier JavaScript SDK généré par API Gateway pour un REST API
-
Extrayez le contenu du fichier .zip API généré par Gateway que vous avez téléchargé précédemment.
-
Activez le partage de ressources entre origines (CORS) pour toutes les méthodes SDK que API Gateway appellera. Pour obtenir des instructions, veuillez consulter CORSpour REST APIs dans API Gateway.
-
Dans votre page web, incluez des références aux scripts suivants.
<script type="text/javascript" src="lib/axios/dist/axios.standalone.js"></script> <script type="text/javascript" src="lib/CryptoJS/rollups/hmac-sha256.js"></script> <script type="text/javascript" src="lib/CryptoJS/rollups/sha256.js"></script> <script type="text/javascript" src="lib/CryptoJS/components/hmac.js"></script> <script type="text/javascript" src="lib/CryptoJS/components/enc-base64.js"></script> <script type="text/javascript" src="lib/url-template/url-template.js"></script> <script type="text/javascript" src="lib/apiGatewayCore/sigV4Client.js"></script> <script type="text/javascript" src="lib/apiGatewayCore/apiGatewayClient.js"></script> <script type="text/javascript" src="lib/apiGatewayCore/simpleHttpClient.js"></script> <script type="text/javascript" src="lib/apiGatewayCore/utils.js"></script> <script type="text/javascript" src="apigClient.js"></script>
-
Dans votre code, initialisez le code SDK généré par API Gateway en utilisant un code similaire au suivant.
var apigClient = apigClientFactory.newClient();
Pour initialiser le code SDK généré par API Gateway avec des AWS informations d'identification, utilisez un code similaire au suivant. Si vous utilisez des AWS informations d'identification, toutes les demandes adressées au API seront signées.
var apigClient = apigClientFactory.newClient({ accessKey: 'ACCESS_KEY', secretKey: 'SECRET_KEY', });
Pour utiliser une API clé SDK générée par API Gateway, transmettez-la en tant que paramètre à l'
Factory
objet en utilisant un code similaire au suivant. API Si vous utilisez une API clé, elle est spécifiée dans l'x-api-key
en-tête et toutes les demandes adressées au testament API seront signées. Cela signifie que vous devez définir les en-têtes CORS Accept appropriés pour chaque demande.var apigClient = apigClientFactory.newClient({ apiKey: 'API_KEY' });
-
Appelez les API méthodes dans API Gateway en utilisant un code similaire au suivant. Chaque appel renvoie une promesse avec des rappels de réussite et d'échec.
var params = { // This is where any modeled request parameters should be added. // The key is the parameter name, as it is defined in the API in API Gateway. param0: '', param1: '' }; var body = { // This is where you define the body of the request, }; var additionalParams = { // If there are any unmodeled query parameters or headers that must be // sent with the request, add them here. headers: { param0: '', param1: '' }, queryParams: { param0: '', param1: '' } }; apigClient.
methodName
(params, body, additionalParams) .then(function(result){ // Add success callback code here. }).catch( function(result){ // Add error callback code here. });Ici, le
methodName
est construit à partir du chemin de ressource de la demande de méthode et du HTTP verbe. Pour les SimpleCalc API, les SDK méthodes pour les API méthodes de1. GET /?a=...&b=...&op=... 2. POST / { "a": ..., "b": ..., "op": ...} 3. GET /{a}/{b}/{op}
les SDK méthodes correspondantes sont les suivantes :
1. rootGet(params); // where params={"a": ..., "b": ..., "op": ...} is resolved to the query parameters 2. rootPost(null, body); // where body={"a": ..., "b": ..., "op": ...} 3. aBOpGet(params); // where params={"a": ..., "b": ..., "op": ...} is resolved to the path parameters