Lorsque vous travaillez sur le développement backend, deux termes que vous rencontrerez forcément sont API et Middleware.
Bien que les deux jouent un rôle essentiel dans l'architecture des applications, ils répondent à des objectifs très différents.
Décomposons-les, comparons leurs rôles et clarifions leurs différences d'une manière qui ne vous donnera pas envie de retourner votre bureau.
API signifie Application Programming Interface. Il s’agit essentiellement d’un contrat qui permet à différents composants logiciels de communiquer entre eux.
Pensez-y comme au serveur d'un restaurant : il prend votre commande (demandes), la livre à la cuisine (serveur) et ramène votre nourriture (réponse).
Vous utilisez une API chaque fois que vous commandez un Uber ou publiez un tweet. Le backend de l'application fournit une API permettant au frontend de récupérer ou d'envoyer des données.
const express = require('express'); const app = express(); app.get('/users', (req, res) => { res.json([ { id: 1, name: 'John Doe' }, { id: 2, name: 'Jane Smith' }, ]); }); app.listen(3000, () => { console.log('Server running on port 3000'); });
Le middleware ressemble davantage au personnel en coulisses de la cuisine : ce n'est pas celui qui vous sert directement, mais il garantit que tout se passe bien.
En termes techniques, le middleware est une fonction ou un ensemble de fonctions qui se situe entre la requête et la réponse dans votre pipeline d'application.
Considérez le middleware comme un agent de sécurité dans un bâtiment.
Il garantit que seules les personnes autorisées (demandes valides) parviennent aux bureaux (API).
const express = require('express'); const app = express(); const loggingMiddleware = (req, res, next) => { console.log(`Request made to: ${req.url}`); next(); // Pass control to the next middleware or handler }; app.use(loggingMiddleware); app.get('/users', (req, res) => { res.json([ { id: 1, name: 'John Doe' }, { id: 2, name: 'Jane Smith' }, ]); }); app.listen(3000, () => { console.log('Server running on port 3000'); });
Aspect | API | Middleware |
---|---|---|
Purpose | Defines endpoints for interaction. | Processes requests/responses. |
Visibility | Exposed to external systems. | Works internally within the app. |
Examples | /users, /products, /login | Authentication, logging, error handling |
Interaction | Invoked by external clients. | Invoked automatically in the request pipeline. |
Code Placement | Found in controllers. | Found in the middleware functions. |
API
Middleware
Imaginez créer une application de covoiturage. Les API peuvent inclure :
En coulisses, le middleware assure :
Les API et les middlewares sont indispensables à la création d'une application robuste : l'une expose les fonctionnalités et l'autre garantit son fonctionnement fluide et sécurisé.
Je travaille sur un outil très pratique appelé LiveAPI.
Il est conçu pour faciliter la documentation des API pour les développeurs.
Avec LiveAPI, vous pouvez générer rapidement une documentation interactive sur les API qui permet aux utilisateurs d'exécuter des API directement depuis le navigateur.
Si vous en avez assez de créer manuellement des documents ou si vous ne voulez pas passer du temps à intégrer Swagger pour vos API, cet outil pourrait bien vous faciliter la vie, essayez LiveAPI maintenant !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!