Partie 2 : Serveur web, environnement d'exécution NodeJS Flashcards
Serveur statique
serveur qui retourne des documents, mais qui ne change pas selon l’état de l’application du serveur
Serveur dynamique
serveur qui contient de la logique de traitement (business logic)
Ajout/modif/renvoie
NodeJS
Environnement d’exécution avec des modules pour des serveurs HTTP
Est-ce que NodeJS est un serveur web à plusieurs fils d’exécution?
NON, car il est basé sur Javascript qui est synchrone avec un seul thread d’exécution
Pourquoi on utilise le concept de l’asynchrone lors de la lecture et l’écriture sur un serveur d’un long fichier ?
Asynchrone pour ne pas bloquer le thread d’exécution
NodeJs avec routage
on décompose la requête. On retourne un message dépendaient du URL.
Attention : mieux d’utiliser Express et non le routage.
Express. C’est quoi est pourquoi on l’utilise?
Librairie JS minimaliste de gestion des requêtes HRRP très populaire.
Simplifie le développement de serveurs Web
C’est quoi un Middleware?
C’est une pile d’éléments qui permet d’exécuter différentes fonctions dans les requêtes. Traite la requête, la réponse ou toute autre action avant ou après l’envoi de la réponse.
Faire attention à l’ordre de déclaration des middleware.
C’est quoi un routeur?
C’est une manière de gérer plusieurs routes.
ATTENTION : Ne pas mélanger avec les Routes (middleware)
Routes statiques vs routes dynamiques
- route statique : ne change pas
- route dynamique : route avec id + query (donc change)
Cookies signées
Express permet la création de cookies normaux et signés (pour plus de sécurité)
Partage de ressources d’origines multiples (CORS)
Principe de sécurité. Pour des raisons de sécurité, un navigateur refuse d’accéder à un site dont le domaine diffère de celui de la page originalement chargé
FS (file system)
Base de la persistance de donnée. Module permettant l’accès et la manipulation de fichiers locaux.
npm (Node Package Manager)
Gestionnaire de module pour des librairie JS. Similaire à pip en Python.
Permet d’installer des modules.
Comment on configure npm?
On le configure dans package.json