Création d'une application Web simple

DIDACTICIEL

Dans ce module, vous allez déployer votre fonction sans serveur à l'aide d'Amazon API Gateway.

Présentation

Dans ce module, vous allez utiliser Amazon API Gateway pour créer une API RESTful permettant d'effectuer des appels en direction d'une fonction Lambda depuis un client Web (qui se rapporte généralement à un navigateur Web). API Gateway fait office de couche intermédiaire entre le client HTML créé au cours du module 1 et le back-end sans serveur créé au cours du module 2.

Qu'allez-vous accomplir ?

Dans ce module, vous allez :

  • Créer une nouvelle API à l'aide d'API Gateway
  • Définir les méthodes HTTP de l'API
  • Déclencher une fonction Lambda depuis une API
  • Activer le partage de ressources entre origines multiples (CORS) sur une API afin de pouvoir consommer des ressources provenant d'une autre origine (domaine)
  • Tester une API créée à l'aide d'API Gateway depuis la console de gestion AWS

Concepts clés

API RESTful – « REST », qui est l'acronyme de « Representational State Transfer », désigne un type d'architecture permettant de créer des services Web. Une API, pour sa part, désigne une interface de programmation d'application. Ainsi, une API RESTful permet de mettre en œuvre une architecture REST.

Méthodes de requête HTTP – Les méthodes HTTP sont conçues pour permettre les communications entre des clients et des serveurs. Par exemple, les méthodes GET ou PUT, définies par le protocole HTTP, sont utilisées pour indiquer l'action à effectuer avec une ressource.

Mécanisme CORS – La fonctionnalité de sécurité du navigateur CORS utilise des en-têtes HTTP pour indiquer à un navigateur qu'une application Web donnée s'exécutant au niveau d'une origine (domaine) doit être autorisée à accéder à certaines ressources depuis un serveur situé au niveau d'une autre origine.

Optimisé pour la périphérie – Cette expression fait référence aux ressources s'appuyant sur l'infrastructure mondiale AWS pour mieux répondre aux besoins de clients répartis dans différentes régions.

 Temps nécessaire

5 minutes

 Services utilisés

 Date de la dernière mise à jour

4 avril 2023

Mise en œuvre

    1. Connectez-vous à la console API Gateway.
    2. Dans la section Sélectionner un type d'API, recherchez la carte API REST et cliquez sur le bouton Créer de celle-ci.
    3. Sous Choisir le protocole, sélectionnez REST.
    4. Sous Créer une nouvelle API, sélectionnez Nouvelle API.
    5. Dans le champ Nom de l'API, saisissez HelloWorldAPI.
    6. Sélectionnez la fonction Optimisé pour les périphériques dans le menu déroulant Type de point de terminaison. (Remarque : les points de terminaison optimisés pour les périphériques sont recommandés pour les clients répartis sur plusieurs régions. Il s'agit également de l'option la mieux adaptée aux services publics auxquels l'on accède depuis Internet. Les points de terminaison régionaux, quant à eux, sont généralement utilisés avec les API auxquelles l'on accède principalement depuis une même Région AWS.)
    7. Cliquez sur le bouton Créer une API, de couleur bleue. Vous devez avoir défini les paramètres suivants :
    Créez une page d'API affichant les sélections et les paramètres des API.
    1. Dans le panneau de navigation de gauche, cliquez sur Ressources sous API : HelloWorldAPI.
    2. Vérifiez que la ressource « / » est sélectionnée.
    3. Dans le menu déroulant Actions, cliquez sur Créer une méthode.
    4. Sélectionnez POST dans le nouveau menu déroulant qui s'affiche, puis cochez la case.
    5. Sélectionnez Fonction Lambda en tant que type d'intégration.
    6. Sélectionnez la région Lambda que vous avez utilisée lors de la création de la fonction (sinon, un avertissement indiquant « Vous n'avez aucune fonction Lambda dans… » s'affichera).
    7. Saisissez HelloWorldFunction dans le champ Fonction Lambda.
    8. Cliquez sur le bouton Enregistrer, de couleur bleue.
    9. Un message vous indiquant que vous autorisez l'API en cours de création à appeler votre fonction Lambda doit s'afficher. Cliquez sur le bouton OK.
    10. Sélectionnez la méthode POST nouvellement créée, puis Activer le mécanisme CORS dans le menu déroulant Action.
    11. Laissez la case POST cochée et cliquez sur le bouton Activer le mécanisme CORS et remplacer les en-têtes CORS existants, de couleur bleue.
    Activez la page de configuration CORS.

    10. Un message vous invitant à confirmer les modifications apportées à la méthode doit s'afficher. Cliquez sur le bouton Oui, remplacer les valeurs existantes, de couleur bleue.

    Confirmez le message de modification de la méthode.
    1. Dans la liste déroulante Actions, sélectionnez Déploiement d'API.
    2. Cliquez sur [Nouvelle étape] dans la liste déroulante Étape de déploiement.
    3. Saisissez dev dans le champ Nom de l'étape.
    4. Cliquez sur Déployer.
    5. Copiez et enregistrez l'URL située en regard de URL d'invocation (vous en aurez besoin au cours du module 5).
    1. Dans le panneau de navigation de gauche, sélectionnez Ressources.
    2. Les méthodes disponibles pour l'API s'affichent sur la droite. Sélectionnez POST.
    3. Cliquez sur la petite icône en forme d'éclair bleu.
    4. Collez les éléments suivants dans le champ Corps de la requête :
    {
        "firstName":"Grace",
        "lastName":"Hopper"
    }

    5. Cliquez sur le bouton Tester, de couleur bleue.

    6. Sur la droite, une réponse comportant la mention Code 200 doit s'afficher.

    7. Félicitations ! Vous avez créé et testé une API permettant d'appeler une fonction Lambda.

Architecture d'application

Le module 3 est désormais terminé. Voici à quoi ressemble votre infrastructure :

Schéma d'architecture illustrant les services hébergés dans le cloud AWS, où les connexions sont affichées des utilisateurs externes aux services AWS interconnectés.

Le service API Gateway a été ajouté et connecté à la fonction Lambda existante. La fonction peut maintenant être déclenchée à l'aide d'un appel d'API. Il n'est cependant toujours pas possible de générer cet appel depuis un client Web. Vous allez donc ajouter une table de données au cours du module 4, puis connecter tous les éléments au cours du module 5.

Cette page vous a-t-elle été utile ?

Création d'une table de données