Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Objectifs
Usage du Framework Express avec le Template EJS
Usage de express-generator :
npm install express-generator -g
(express --view=ejs monApplication)
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Définitions
Une REST API, qu'est-ce que c'est ?
Une API REST (également appelée API RESTful) est une interface de programmation d'application (API ou API
web) qui respecte les contraintes du style d'architecture REST et permet d'interagir avec les services web RESTful
RESTful.
L'architecture REST (Representational
Representational State Transfer
Transfer) a été créée par l'informaticien Roy Fielding.
Une API, qu'est-ce que c'est ?
Une API est un ensemble de définitions et de protocoles qui facilite la création et l'intégration de logiciels
d'applications. Elle est parfois considérée comme un contrat entre un fournisseur d'informations et un utilisateur
d'informations, qui permet de définir le contenu demandé au consommateur (l'appel) et le contenu demandé au
producteur (la réponse)
réponse).
Par exemple, l'API conçue pour un service de météo peut demander à
l'utilisateur de fournir un code postal et au producteur de renvoyer une
réponse en deux parties : la première concernant la température maximale
et la seconde la température minimale.
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Fonctionnement API
Les API constituent un moyen simplifié de connecter votre
propre infrastructure au travers du développement
d'applications cloud-native
Imaginez, par exemple, un distributeur de livres. Ce distributeur pourrait fournir à
ses librairies clientes une application cloud qui leur permettrait de vérifier la
disponibilité des livres auprès du fournisseur
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Fonctionnement API
Les API permettent à votre produit ou service de communiquer avec d'autres
Le développement d'applications cloud-native est un moyen évident d'augmenter la vitesse de développement. Il
repose sur la connexion d'une architecture d'applications de type microservices via des API
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création API REST
Exercice 01
40min
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation NodeJS et ExpressJs
NodeJS
-
-
-
des serveurs Web.
Il s'agit d'un environnement d'exécution JavaScript open source asynchrone piloté par les événements.
Il est construit sur le moteur JavaScript de Chrome (moteur V8).
Il permet aux développeurs d'utiliser Javascript côté serveur.
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
Le framework Express est installé et enregistré dans le package.json avec npm install express .
Pour créer une application Express, appelez simplement la méthode express() .
Un middleware est un bloc de code qui traite les requêtes et réponses de votre application.
Ajouter la normalisation de port, la gestion d'erreur et du logging basique à votre serveur Node le rend plus constant et
plus facile à déboguer.
npm init -y
npm install express
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
http : est un module nodeJS qui permet de créer un serveur
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
index.js
const express=require('express')
const app =express() // créer une instance de l'application express
app.listen(4000,()=>{
console.log("Le serveur est démaré sur le port 4000")
})
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS Définir les routes
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS Définir les routes
Handler
Un handler reçoit toujours deux objets en paramètres. Ces objets sont créés par express est sont
spécifiques à chaque requête reçue.
Chaîner les Handler
Il est également possible de chaîner les Handlers, pour ce faire il
app.get('/', (req, res) => { next
app.get( produits', (req, res, next) => {
res.send('hello world');
console.log('La réponse sera envoyée par la fonction suivante...');
}); next();
}, (req, res) => {
res.send('Hello from B!');
});
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
res.send('hello world');
res.status(404).end();
res.status(404).send('product not found.');
res.json(json_object);
res.redirect(301, 'http://example.com');
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
const express = require( );
const app = express();
app.use(express.static( ))
app.use(express.static('htmls ))
app.get('product', (request, response)=>{
response.sendFile("productsample.html")
})
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
app.get('/', (req, res) => {
res.header('Content-type', 'text );
return res.end( );
});
res.header('Access-Control-Allow-Origin', )
res.header( 'Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept' )
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Credentials", true);
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization");
next();
});
Cross-origin resource sharing (CORS)
x
est un mécanisme qui consiste à ajouter des en-têtes HTTP afin de permettre à un agent utilisateur
d'accéder à des ressources d'un serveur situé sur une autre origine que le site courant. Un agent
utilisateur réalise une requête HTTP multi-origine (cross-origin) lorsqu'il demande une ressource
provenant d'un domaine, d'un protocole ou d'un port différent de ceux utilisés pour la page courante.
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
http://localhost:3000/?prenom=gahi&nom=said
app.get('/', (req, res) => {
res.send(req.query.prenom);
});
http://localhost:3000/gahi/said app.get('/:prenom/:nom', (req, res) => {
var prenom = req.params.prenom
res.send('Salut ' + prenom );
});
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
app.get('/:prenom/:nom', (req, res) => {
let {prenom,nom} = req.params
res.send( prenom );
});
La méthode app.use() vous permet d'attribuer un middleware à une route spécifique de
votre application.
Le CORS définit comment les serveurs et les navigateurs interagissent, en spécifiant quelles
ressources peuvent être demandées de manière légitime par défaut, les requêtes AJAX sont
interdites.
Pour permettre des requêtes cross-origin (et empêcher des erreurs CORS), des headers
spécifiques de contrôle d'accès doivent être précisés pour tous vos objets de réponse.
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Installation ExpressJS
index.js
Ajouter les
chemin vers les
actions de mise
à jour des
données
Partie II Créer des APIs REST simples en Node JS et Express Js Formateur : Said GAHI
Création des APIs
La Structure du Projet
Controllers
Models : Contenant la définition des Schémas
(Objets) avec le mapping avec une collection
(chemin) vers les ressources
Module contenant la chaine de connexion au
serveur de données
créer un serveur http