Chapitre 12 : Travailler avec CORS dans NodeJS

CORS, ou Cross-Origin Resource Sharing, est une technologie cruciale pour les développeurs Web modernes. C'est un moyen de permettre à un site Web d'accéder aux ressources d'un autre site Web, même si elles se trouvent sur des domaines différents. En termes simples, il s'agit d'une politique qui détermine si un navigateur doit autoriser un script exécuté sur une page à accéder aux ressources d'un autre domaine.

Lorsque vous travaillez avec des API dans NodeJS, il est courant de rencontrer des problèmes CORS. En effet, par défaut, la politique de même origine du navigateur empêche les sites d'accéder aux ressources d'autres sites. Cette politique est une mesure de sécurité importante, mais elle peut constituer un obstacle lors du développement d'API qui doivent être accessibles depuis différents domaines.

Pour contourner ce problème, nous pouvons utiliser le module NodeJS CORS. Ce module ajoute les en-têtes CORS nécessaires aux réponses du serveur, permettant aux navigateurs d'accéder à l'API depuis différents domaines.

Pour commencer à travailler avec CORS dans NodeJS, vous devez d'abord installer le module. Cela peut facilement être fait avec npm, le gestionnaire de packages NodeJS. Ouvrez simplement le terminal et tapez la commande suivante :

npm installer les cors

Une fois installé, vous pouvez commencer à utiliser le module dans votre code. Tout d'abord, vous devez l'importer dans votre fichier. Cela se fait avec la commande require :

const cors = exiger('cors')

Ensuite, vous devez utiliser le middleware CORS dans votre application. Cela se fait avec la méthode use de l'objet application Express :

app.use(cors())

Grâce à cela, votre serveur NodeJS est configuré pour accepter les requêtes de n'importe quel domaine. Cependant, dans un environnement de production, vous souhaiterez probablement restreindre l'accès à certains domaines. Cela peut être fait en passant un objet options à la fonction cors :

app.use(cors({ origine : 'http://monsite.com' }))

Cette configuration permettra uniquement au domaine 'http://mysite.com' d'accéder à votre API.

En plus du domaine d'accueil, vous pouvez configurer de nombreuses autres options. Par exemple, vous pouvez spécifier quelles méthodes HTTP sont autorisées avec l'option méthodes :

app.use(cors({ origine : 'http://monsite.com', méthodes : ['GET', 'POST'] }))

Cette configuration permettra au domaine 'http://monsite.com' d'effectuer des requêtes GET et POST vers votre API, mais pas PUT ou DELETE, par exemple.

Une autre option utile concerne les informations d'identification. Si la valeur est true, cela permettra aux navigateurs d'inclure des cookies dans les requêtes adressées à votre API. Ceci est utile si vous utilisez des sessions ou une authentification basée sur des jetons :

app.use(cors({ origine : 'http://monsite.com', méthodes : ['GET', 'POST'], informations d'identification : vrai }))

Travailler avec CORS dans NodeJS est essentiel pour créer des API sécurisées et accessibles. Même si cela peut paraître compliqué au début, le module CORS rend le processus assez simple. Avec seulement quelques lignes de code, vous pouvez configurer votre API pour accepter les requêtes de différents domaines, tout en gardant le contrôle sur les domaines qui ont accès et les méthodes HTTP qu'ils peuvent utiliser.

En résumé, CORS est un élément crucial de la sécurité Web et un sujet important à comprendre pour tout développeur NodeJS. En maîtrisant CORS, vous serez sur le point de créer des API robustes et sécurisées dans NodeJS.

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

Qu'est-ce que CORS et comment est-il utilisé dans NodeJS ?

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

Vous avez raté! Essayer à nouveau.

Image de l'article Gestion des erreurs dans NodeJS

Page suivante de lebook gratuit :

81Gestion des erreurs dans NodeJS

3 minutes

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