Digital-Echo logo

Services

image article

Créer simplement une API avec Express.js

Express.js est un framework minimaliste pour créer des applications web flexibles avec le language Node.js. Suivez-ce tutoriel pour créer rapidement une API avec Express.js.

Modifié le 14/07/2024 - Nathan Francois


Présentation du framework Express.js

Express.js est une framework minimaliste et souple pour Node.js créer en 2009. Il offre des fonctionnalités permettant de créer une application web côté serveur, c'est le framework le plus utilisé actuellement pour Node.js. La construction du framework Express.js est basée sur le module http de Node.js.

Les fonctionnalités d'Express.js :

  • Gérer les routes
  • Middleware (sur l'application ou sur les routes)
  • Moteur de rendu
  • Traitement des erreurs

 

Installer Express.js

Il est nécessaire d'avoir installé Node.js sur votre machine avant de commencer.

  1. Créez un d'un dossier nommé "MonProjet" et ouvrez une interface en ligne de commande dans le dossier
     
  2. Installer NPM avec la commande suivante et appuyez sur Entrée plusieurs fois de suite afin de valider l'installation
    $ npm init
     
  3. Installez le package Express.js
    $ npm i express

 

Créer un serveur web avec Express.js

  1. Créez un fichier nommé index.js et copiez le code ci-dessous
    const express = require("express");
    const app = express();
     
    const port = 3000;

    app.get("/", (req, res) => {
        res.status(200).send("Hello World!");
    });

    app.listen(port, () => {
        console.log(`Example app listening on port ${port}`);
    });
     
  2. Exécutez l'application avec la commande suivante
    $ node index.js
     
  3. Votre application est accessible sur http://localhost:3000

Avec cet exemple nous avons exécuté un serveur Express.js s'éxécutant sur le port 3000 affichant le message Hello World aux demandes GET adressées à l'URL racine de notre application (/). Les demandes adressées sur d'autre chemins répondront 404 Not Found.

 

Modifier le format de réponse

Il existe de nombreuse méthodes de réponse disponibles au sein d'Express.js utilisiables directement via l'objet response. La liste des méthodes disponibles pour l'objet response.

Repondre du HTML

app.get("/", (req, res) => {
    res.set('Content-Type', 'text/html') // Vous pouvez définir l'entête de réponse (facultatif)
    res.status(200).send("<html><body><h1>Hello World</h1></body></html>");
});

Répondre du JSON

  • res.send()

    La méthode res.send(param) renvoie automatiquement du JSON si le paramètre est de type Object ou Array
    app.get("/", (req, res) => {
        res.set('Content-Type', 'application/json') // Vous pouvez définir l'entête de réponse (facultatif)
        res.status(200).send({message : "Hello World"});
    });
  • res.json()

    La méthode res.json(param) renvoie une réponse de type JSON en convertissant le paramètre envoyer à l'aide de JSON.stringify(). Le paramètre indiqué peut-être de type Object, Array, String, Number, Boolean ou null
    app.get("/", (req, res) => {
        res.set('Content-Type', 'application/json') // Vous pouvez définir l'entête de réponse (facultatif)
        res.status(500).json({ error: 'Internal Server Error' })
    });

 

Le routage de base d'une application Express.js

Le routage de base d'une application Express.js peut-être gérer directement via l'instance d'express (app). Les exmples suivants illustrent la définiton de routes simples mais Express.js propose de multiples façons de gérer les routes.

  • La méthode GET

    app.get("/articles", (req, res) => {
        res.send("La liste des articles")
    });
  • La méthode POST

    app.post("/articles/1", (req, res) => {
        res.send("L'article 1 à été modifié")
    });
  • La méthode PUT

    app.put("/articles", (req, res) => {
        res.send("Article crée")
    });
  • La méthode DELETE

    app.delete("/articles/1", (req, res) => {
        res.send("Article 1 supprimé")
    });

Voici les bases de l'utilisation d'Express.js mais le framework propose de nombreuses fonctionnalités permettant de correspondre à des cas d'utilisation spécifiques.

Les plus récents


user logo

Nathan Francois

14/07/2024

Partager :

Les plus populaires

Les articles les plus consultés en ce moment.

image article

Les 12 meilleurs API REST gratuites 2022

Un classement des meilleurs API gratuites pour vos applications web et mobile en 2022.


Digital-Echo logo

© Digital-Echo. 2021

Lorsque vous visitez ou interagissez avec nos sites, services ou outil, nous pouvons stocker vos informations de navigation. Celles-ci ne seront pas partagées et nous permettent d′améliorer l′expérience utilisateur pour vous offrir une navigation plus rapide et plus sûre.

Politique de confidentialité