Configuration d'une méthode à l'aide de la console API Gateway - Amazon API Gateway

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.

Configuration d'une méthode à l'aide de la console API Gateway

Avant de configurer une méthode d'API, vérifiez ce qui suit :

Configuration d'une demande de méthode API Gateway dans la console API Gateway

Pour utiliser la console API Gateway pour spécifier une demande/réponse de méthode d'une API et pour configurer la manière dont la méthode va autoriser les demandes, suivez ces instructions.

Note

Ces instructions supposent que vous avez déjà réalisé les étapes de Configuration d'une demande d'intégration d'API à l'aide de la console API Gateway. Il est préférable de les utiliser en complément des discussions dans Création d'une API REST API Gateway avec l'intégration Lambda.

  1. Dans le volet Ressources, choisissez votre méthode, puis cliquez sur l'onglet Demande de méthode.

  2. Dans la section Paramètres de la demande de méthode, choisissez Modifier.

  3. Pour Autorisation, sélectionnez un mécanisme d'autorisation disponible.

    1. Pour activer l'accès ouvert à la méthode pour n'importe quel utilisateur, choisissez Aucun. Cette étape peut être ignorée si le paramètre par défaut n'a pas été modifié.

    2. Pour utiliser les autorisations IAM afin de contrôler l'accès client à la méthode, sélectionnez AWS_IAM. Avec ce choix, seuls les utilisateurs des rôles IAM avec la bonne stratégie IAM attachée sont autorisés à appeler cette méthode.

      Pour créer le rôle IAM, spécifiez une stratégie d'accès dans un format similaire à ce qui suit :

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "resource-statement" ] } ] }

      Dans cette stratégie d'accès, resource-statement est la valeur du champ ARN de la section Authorization Settings. Pour en savoir plus sur la définition d'autorisations IAM, consultez Contrôle de l'accès à une API avec des autorisations IAM.

      Pour créer le rôle IAM, vous pouvez adapter les instructions « Pour créer le rôle d'appel Lambda et sa stratégie » et « Pour créer le rôle d'exécution Lambda et sa stratégie » de la section Création de fonctions Lambda dans Création d'une API REST API Gateway avec l'intégration Lambda.

    3. Pour utiliser un mécanisme d'autorisation Lambda, sélectionnez un jeton ou un mécanisme d'autorisation de demande. Créez un mécanisme d'autorisation Lambda pour que ce choix s'affiche dans le menu déroulant. Pour de plus amples informations sur la création d'un mécanisme d'autorisation Lambda, veuillez consulter Utilisation des mécanismes d'autorisation Lambda API Gateway.

    4. Pour utiliser un groupe d'utilisateurs Amazon Cognito, choisissez un groupe d'utilisateurs disponible sous Cognito user pool authorizers (Mécanismes d'autorisation du groupe d'utilisateurs Cognito). Créez un groupe d'utilisateurs dans Amazon Cognito, ainsi qu'un mécanisme d'autorisation de groupe d'utilisateurs Amazon Cognito dans API Gateway pour que ce choix s'affiche dans le menu déroulant. Pour de plus amples informations sur la manière de créer un mécanisme d'autorisation de groupe d'utilisateurs Amazon Cognito, veuillez consulter Contrôle de l'accès à une API REST à l'aide de groupes d'utilisateurs Amazon Cognito en tant que mécanisme d'autorisation.

  4. Pour spécifier la validation des demandes, sélectionnez une valeur dans le menu déroulant Validateur de demande. Pour désactiver la validation des demandes, sélectionnez Aucune. Pour plus d'informations concernant chaque option, consultez Utilisation de la validation des demandes dans API Gateway.

  5. Sélectionnez Clé API obligatoire pour exiger une clé API. Lorsque cette option est activée, les clés d'API sont utilisées dans les plans d'utilisation afin de limiter le trafic client.

  6. (Facultatif) Pour attribuer un nom d'opération dans un kit SDK Java de cette API généré par API Gateway, entrez un nom pour Nom de l'opération. Par exemple, pour la demande de méthode GET /pets/{petId}, le nom d'opération du kit SDK Java est, par défaut, GetPetsPetId. Ce nom est créé à partir du verbe HTTP der la méthode (GET) et des noms de variables du chemin de la ressource (Pets et PetId). Si vous définissez le nom de l'opération en tant que getPetById, le nom d'opération du kit SDK devient GetPetById.

  7. Pour ajouter un paramètre de chaîne de requête à la méthode, procédez comme suit :

    1. Choisissez Paramètres de chaîne de requête d'URL, puis Ajouter une chaîne de requête.

    2. Pour Nom, entrez le nom du paramètre de chaîne de requête.

    3. Sélectionnez Obligatoire si le paramètre de chaîne de requête récemment créé doit être utilisé pour une validation de demande. Pour plus d'informations sur la validation de demande, consultez Utilisation de la validation des demandes dans API Gateway.

    4. Sélectionnez Mise en cache si le paramètre de chaîne de requête récemment créé doit être utilisé dans le cadre d'une clé de mise en cache. Pour plus d'informations sur la mise en cache, consultez Utilisation de paramètres de méthode ou d'intégration en tant que clés de cache pour indexer les réponses mises en cache.

    Pour supprimer le paramètre de chaîne de requête, choisissez Supprimer.

  8. Pour ajouter un paramètre d'en-tête à la méthode, procédez comme suit :

    1. Choisissez En-têtes de demande HTTP, puis Ajouter un en-tête.

    2. Pour Nom, entrez le nom de l'en-tête.

    3. Sélectionnez Obligatoire si l'en-tête récemment créé doit être utilisé pour une validation de demande. Pour plus d'informations sur la validation de demande, consultez Utilisation de la validation des demandes dans API Gateway.

    4. Sélectionnez Mise en cache si l'en-tête récemment créé doit être utilisé dans le cadre d'une clé de mise en cache. Pour plus d'informations sur la mise en cache, consultez Utilisation de paramètres de méthode ou d'intégration en tant que clés de cache pour indexer les réponses mises en cache.

    Pour supprimer l'en-tête, choisissez Supprimer.

  9. Pour déclarer le format de charge utile d'une demande de méthode avec le verbe HTTP POST, PUT ou PATCH, choisissez Corps de la demande et procédez comme suit :

    1. Choisissez Add model.

    2. Pour Content-Type, entrez un type MIME (par exemple application/json).

    3. Pour Modèle, sélectionnez un modèle dans le menu déroulant. Les modèles disponibles actuellement pour l'API incluent les modèles Empty et Error par défaut, ainsi que tous les modèles que vous avez créés et ajoutés à la collection Models de l'API. Pour plus d'informations sur la création d'un modèle, consultez Comprendre les modèles de données.

      Note

      Le modèle est utile pour informer le client du format de données prévu pour une charge utile. Il permet également de générer un modèle de mappage squelettique. Il est important de générer un kit SDK fortement typé de l'API dans des langages comme Java, C#, Objective-C et Swift. Ceci est nécessaire uniquement si la validation de demande est activée pour la charge utile.

  10. Choisissez Enregistrer.

Configuration d'une réponse de méthode API Gateway à l'aide de la console API Gateway

Une méthode d'API peut avoir un ou plusieurs réponses. Chaque réponse est indexée selon son code de statut HTTP. Par défaut, la console API Gateway ajoute la réponse 200 aux réponses de méthode. Vous pouvez modifier cela, par exemple pour que la méthode renvoie plutôt la réponse 201. Vous pouvez ajouter d'autres réponses, par exemple, 409 en cas d'accès refusé et 500 si des variables d'étape non initialisées sont utilisées.

Pour utiliser la console API Gateway pour modifier, supprimer ou ajouter une réponse à une méthode d'API, suivez les instructions suivantes.

  1. Dans le volet Ressources, choisissez votre méthode, puis cliquez sur l'onglet Réponse de la méthode. Vous devrez peut-être choisir la flèche droite pour afficher l'onglet.

  2. Dans la section Paramètres de réponse de la méthode, choisissez Créer une réponse.

  3. Pour Code de statut HTTP, entrez un code de statut HTTP, tel que 200, 400 ou 500.

    Lorsqu'une réponse renvoyée par le backend n'a pas de méthode de réponse correspondante définie, API Gateway échoue à renvoyer la réponse au client. Au lieu de cela, une réponse d'erreur 500 Internal server error est renvoyée.

  4. Sélectionnez Add header.

  5. Pour Nom de l'en-tête, entrez un nom.

    Pour renvoyer un en-tête du backend au client, ajoutez-le dans la réponse de la méthode.

  6. Choisissez Ajouter un modèle pour définir un format pour le corps de la réponse de méthode.

    Entrez le type de média de la charge utile de la réponse pour Type de contenu et choisissez un modèle dans le menu déroulant Modèles.

  7. Choisissez Enregistrer.

Pour modifier une réponse existante, accédez à la réponse de votre méthode, puis choisissez Modifier. Pour modifier le Code de statut HTTP, choisissez Supprimer et créez une nouvelle méthode de réponse.

Pour chaque réponse renvoyée par le backend, vous devez disposer d'une réponse compatible configurée comme réponse de méthode. Toutefois, le modèle de charge utile et d'en-têtes de réponse de méthode de configuration sont facultatifs, sauf si vous mappez le résultat à partir du backend à la réponse de méthode avant de revenir au client. De plus, un modèle de charge utile de réponse de méthode est important si vous générez un kit SDK fortement typé pour votre API.