Introduction

Node.js est un environnement d’exécution JavaScript pour le développementd’une grande diversité d’outils et d’applications, Node est open-source et multi-plateforme . Bien que Node.js n’est pas un framework JavaScript, beaucoup de ses modules de base sont écrits en JavaScript, et les développeurs peuvent écrire de nouveaux modules en JavaScript. L’environnement d’exécution interprète JavaScript en utilisant le moteur de Google JavaScript V8.

Une application Node.js peut fonctionner sur Mac OS X, Microsoft Windows et les serveurs Unix. Elles peuvent également être écrites avec CoffeeScript(une alternative JavaScript), Dart ou Microsoft tapuscrit (formes fortement typées de JavaScript), ou toute autre language qui peut se compiler en JavaScript.

daf551ba.node .js zhi fu ryan dahl kao beiHistorique :

• Node.js est créé par Ryan Dahl en 2009
• Sponsorisé par Joyent
• Développé sur la base de la VM V8 de Google
• Version actuelle : Node v7.7.3 (14 Mars 2017)

 

Principe de Node.js

Pour comprendre le principe de fonctionnement du Node.js, nous allons faire une petite comparaison avec du JavaScript (classique), voici ce qui se passe avec ce dernier, exécuté coté Navigateur (client) :

1

Maintenant, voilà ce qu’il se passe du coté serveur avec Node.js :

2

D’après le principe de fonctionnement de Node.js, vous pouvez constater que Node.js fonctionne en mode non bloquant et il est très rapide en exécution (Grâce au moteur V8 de Google), ce qui permettra d’exécuter des applications ultra rapide tel que : un system de chat, système de download/upload …

Installation (sous windows).

Dans ce tutoriel, nous allons travailler avec Windows comme système d’exploitation, bien que vous pouvez installer Node.js sur d’autres systèmes (Lunix, mac…), de toute façon le Website officiel offre un ensemble de versions compatibles avec tous les plateformes et OS.

3

Nous allons nous contenter de la version node-v6.11.0-x64 que vous pouvez télécharger directement via ce lienPuis, vous installez la version d’une manière classique ( suivant, suivant, suivant … ). 

A la fin vous obtenez deux programmes qui sont installées :

  • Node.js : c’est l’interpréteur de commande Node.js, utilisé assez peu en pratique. Il sert à tester des commandes JavaScript comme le montre la figure suivante :

4

  • Node.js command prompt : c’est une console de Windows configurée pour reconnaître Node.js. C’est par là que vous passerez pour lancer vos programmes Node.js, c’est donc le programme le plus utilisé : (Tapez node pour commancer)

5

Création du serveur web avec Node.js

Nous allons maintenant créer un serveur web simple (fichier.js) avec les fonctions Node.js natives mais vous pouvez vous rendre compte pour un serveur web complet à l’aide du framework Express.

Serveur web basique :

Regardons les lignes de code dans la figure ci-dessous qui permet de créer un simple serveur web avant de les analysées :

6 1

 

Analysons maintenant le code Node.js:

7

require effectue un appel à une bibliothèque de Node.js, dans note cas c’est la bibliothèque ‘ http ’ qui nous permet de créer un serveur web. La variable http représente un objet JavaScript qui nous permettra de lancer notre serveur web.

 

8

La méthode createServer de l’objet http permet de définir la réponse du serveur, elle prend en paramètre une fonction de callback. En fait, toutes les fonctions fournies par Node.js prennent en paramètre une fonction de rappel (callback). Une fois que la fonction aura terminé son traitement, elle sera appelée avec le résultat en paramètre ou une éventuelle erreur.
La fonction de callback est appelée à chaque fois qu’un visiteur se connecte à notre application, elle prend 2 paramètres :
– La requête du visiteur (request dans notre cas) : cet objet contient toutes les informations sur ce que le visiteur a demandé. On y trouve le nom de la page appelée, les paramètres, les éventuels champs de formulaires remplis…
– La réponse à renvoyer au client (response dans notre cas) : c’est dans cet objet qu’il faut remplir pour donner un retour au visiteur. Au final, res contiendra en général le code HTML de la page à renvoyer au visiteur.

Ici, on fait 3 choses très simples dans la réponse :

9

WritreHead : pour écrire le code qui sera en préambule de la réponse.
Write : pour l’écriture dans le flux de la réponse.
End : pour fermer l’objet si vous voulez.

10

On renvoie le code 200 dans l’en-tête de la réponse, qui signifie au navigateur “OK tout va bien” (on aurait par exemple répondu 404 si la page demandée n’existait pas). Il faut savoir qu’en plus du code HTML, le serveur renvoie en général tout un tas de paramètres en en-tête. Il faut connaître la norme http qui indique comment clients et serveurs doivent communiquer pour bien l’utiliser. Voilà encore un exemple de la complexité due au fait que Node.js est bas niveau… Mais en même temps ça nous fait comprendre tout un tas de choses.

Notre serveur écoute sur le port : 3000. Le choix du port est facultatif.

11

Démarrage du serveur

Maintenant que nous avions créer notre serveur web, il faut le démarrer, pour y faire, il suffit de lancer Node.js commande prompt  puis executer la commande :

/> node serverpath

Serverpath représente le chemin de notre serveur web (le fichier JavaScript leProgrammeurServer.js dans notre cas).

 

12 1

On obtient le message : Serveur en écoute … ce qui signifie que notre serveur a été bien démarré.

Test du serveur

Il nous reste maintenant qu’à lancer le navigateur, puis taper l’URL qui correspond à l’adresse et au port d’écoute : http://127.0.0.1:3000 et voiçi le résultat :

13

 

LAISSER UN COMMENTAIRE

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.