دورة nodejs للمبتدئين الدرس الأول


فهاد الدرس الأول من دورة nodejs للمبتدئين غادي نشوفوا شنو هي node js لي كتمكنا باش نخدمو ب javascript coté serveur .
فل php عندها serveur apache لي كيمكن اننا نزيدو فيه الملفات ديالنا ونتعاملو مع les bases de données mysql فالمقابل node js كتدير دور ديال serveur apache بالنسبة ل javascript فكتمكن من إضافة ملفات ف serveur وايضا الإتصال بقواعد البيانات.


1-إضافة أول ملف

أول حاجة خص تدير هي تحميل node js و تثتبيتها فالجهاز ديالك من هنا منبعد غادي تزيد dossier ف disque c سميه nodejs منبعد غادي تفتحو وتزيد فيه ملف سميه index.js.
داخل الملف index.js غادي نكتبو فقط hello world فباش نفتح الملف ديالي غادي تفتح cmd وغادي تكتب الأمر :



دبا انا داخل dossier باش نقرا الملف غادي ندير الأمر :



الكود ديال الملف index.js هو :

                                console.log('hello world');
                            

2- إضافة les modules ف nodejs

ف les modules بحال les librairies javascript  ممكن نزيدهم بلا منحتاج ن installer هم.
فهاد المثال غادي نزيدو واحد خاص بنا 
فكنزيد fichier ف dossier سميه userModule.js لي فقط كيعرض اسم مستخدم فالملف كنزيد objet user فيه اسم ل user منبعد كندير module.exports يعني كنصيفط ل module.
منبعد فل fichier index.js كنستقبل ل fichier userModule.js وكنعرض اسم المستخدم لي زدنا فباش ن exécuter le fichier index.js كيف درنا قبل node index.js الكود لي زدنا هو :

                                //userModule.js code

var user = {name:"samadi"};
module.exports = user;

//index.js code

var  user = require('./userModule.js');
console.log(user.name);
                            

3- استخدام ل module http

فل module http كيمكن باش ن créer و ن démarrer serveur فالمثال لي عندنا زدنا ل module ب require من بعد كن créer serveur كنعطيه le type ديال لمعلومات لي غادي ي afficher هنا حددنا html.
منبعد كنقولو كتب الإسم لي استرجعنا من module userModule.js منبعد كنعطيه ل port لي غادي ي démarrer فيه serveur انا حددتو ف 3000 فدبا يلا رجعتي ل cmd و درتي node index.js غادي تعطيك هاد النتيجة :

 

ويلا مشيتي ل localhost:3000  غادي تلقى هادا النتيجة :



الكود لي زدنا ف index.js هو :

                                var  user = require('./userModule.js');
var http = require('http');

http.createServer(function(req,res){
    res.writeHead(200,{'Content-Type':'text/html'});
    res.write("le nom est " + user.name);
    res.end();
}).listen(3000);
console.log('server starts at port 3000');
                            

4- الفرق بين res & req

فكيف شفنا فملي كن créer serveur ديالي كاين fonction لي كتاخد req و res.
- ف req هي variable كيكون فيها les requêtes لي جاونا من عند المستخدم فالمثال ديالنا عرضنا ل url ب req.url لي كتعرض اي حاجة منبعد / كتبها المستخدم كيف كنشوف فالصورة :



 أما res فكتمكن من عرض الجواب ل requête ديال لمستخدم.
الكود لي زدنا هو :

                                    var  user = require('./userModule.js');
var http = require('http');

http.createServer(function(req,res){
    res.writeHead(200,{'Content-Type':'text/html'});
    res.write("le nom est " + req.url);
    res.end();
}).listen(3000);
console.log('server starts at port 3000');
                                

5- استخدام ل module url

فل module url كيمكن باش نسترجع les variables لي عندي فل url فالمثال لي عندنا زدنا ل module منبعد استرجعنا les variable من req.url.
منبعد خدمت بل query لي كتمكني باش نقسمهم ل des parties وكنعطيهم ل variable fullname لي كتعرض الإسم كامل كيف كنشوف فالصورة :



الكود لي زدنا هو :

                                    //var  user = require('./userModule.js');
var http = require('http');
var url = require('url');


http.createServer(function(req,res){
    res.writeHead(200,{'Content-Type':'text/html'});
    var user = url.parse(req.url, true).query;
    var fullname = user.nom + " " + user.prenom;
    res.write(`bienvenue ${fullname}`);
    res.end();
}).listen(3000);
console.log('server starts at port 3000');