7.13. Travailler avec des routes dans ExpressJS : Travailler avec l'autorisation de route

Página 59

ExpressJS est un framework d'application Web Node.js minimal et flexible qui fournit un ensemble robuste de fonctionnalités pour les applications Web et mobiles. L'une des fonctionnalités les plus puissantes d'ExpressJS est sa capacité à gérer les itinéraires. Dans ce chapitre, nous explorerons comment utiliser les routes dans ExpressJS, avec un accent particulier sur l'utilisation des autorisations dans les routes.

Les itinéraires constituent un aspect essentiel de toute application Web. Ils déterminent comment une application répond à une demande client pour une adresse spécifique. Dans ExpressJS, les routes sont définies en attachant des gestionnaires de routes aux instances d'application.

Pour commencer, comprenons d'abord comment définir un itinéraire de base. Supposons que nous souhaitions créer un itinéraire vers la page d'accueil de notre application. Nous procéderions ainsi :

app.get('/', function(req, res) { res.send('Bienvenue sur la page d'accueil !'); });

Ici, 'app' est une instance d'express, 'get' est la méthode HTTP que nous traitons, '/' est le chemin de la route et la fonction est le gestionnaire de route qui est exécuté lorsque la route correspond.

Parlons maintenant de l'autorisation. L'autorisation est un processus qui vérifie que l'utilisateur est autorisé à effectuer l'action demandée. Dans le contexte des routes, l'autorisation peut être utilisée pour restreindre l'accès à certaines routes en fonction de l'authentification de l'utilisateur.

Pour implémenter l'autorisation dans nos routes, nous pouvons utiliser un middleware. Le middleware est une fonction qui a accès à l'objet de requête (req), à l'objet de réponse (res) et à la fonction middleware suivante dans le cycle requête-réponse de l'application.

Nous pouvons définir un middleware d'autorisation comme suit :

function verifyAuthorization (req, res, next) { si (req.user.isAuthorized) { suivant(); } autre { res.status(403).send('Accès refusé'); } }

Ici, « verificaAuthorizacao » est le middleware que nous définissons. Il vérifie que l'utilisateur est autorisé en vérifiant la propriété 'estaAuthorizado' de l'objet 'user' dans la requête. Si l'utilisateur est autorisé, il appelle la fonction middleware suivante. Sinon, il envoie une réponse avec le statut 403 et un message « Accès refusé ».

Nous pouvons désormais utiliser ce middleware dans nos routes pour restreindre l'accès. Par exemple, si nous voulions restreindre l'accès à la route '/secret', nous procéderions comme ceci :

app.get('/secret', verifyAuthorization, function(req, res) { res.send('Bienvenue sur la page secrète !'); });

Ici, « checkAuthorization » est passé comme deuxième argument à « app.get ». Cela signifie qu'il s'exécutera avant le gestionnaire de route à chaque accès à la route '/secret'. Si l'utilisateur n'est pas autorisé, il recevra une réponse avec le statut 403 et le message « Accès refusé ». Si l'utilisateur est autorisé, le gestionnaire de route s'exécutera et l'utilisateur verra le message « Bienvenue sur la page secrète ! ».

En résumé, les routes sont un aspect essentiel du développement d'applications Web avec ExpressJS. Ils vous permettent de définir comment votre application doit répondre aux différentes requêtes. L'autorisation est un aspect important des routes qui vous permet de restreindre l'accès en fonction de l'authentification de l'utilisateur. En utilisant un middleware, vous pouvez facilement implémenter l'autorisation dans vos itinéraires.

Répondez maintenant à l’exercice sur le contenu :

Qu'est-ce qu'ExpressJS et comment gère-t-il les routes dans une application web ?

Tu as raison! Félicitations, passez maintenant à la page suivante

Vous avez raté! Essayer à nouveau.

Page suivante de lebook gratuit :

607.14. Travailler avec des routes dans ExpressJS : implémentation de la pagination dans les routes

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6,5 millions
d'étudiants

Certificat gratuit et
valide avec QR Code

48 mille exercices
gratuits

Note de 4,8/5 dans les
magasins d'applications

Cours gratuits en
vidéo, audio et texte