Kuidas kirjutada oma esimene rakendus Node.js Linuxis


Veebiarenduse trendid on viimase paari aasta jooksul drastiliselt muutunud ja veebiarendajana on oma mängu tipus olemiseks oluline olla kursis uusimate tehnoloogiatega.

JavaScript on praegune trendikas programmeerimiskeel seal; see on kahtlemata populaarseim tehnoloogia, mida täiskomplekti arendajad kasutavad.

JavaScripti veebiraamistikest on saanud maagiline lahendus kiiremale veebiarendusele absoluutse efektiivsuse, ohutuse ja minimeeritud kuludega. Olen üsna kindel, et olete kuulnud Node JavaScripti kohta (mida tavaliselt nimetatakse Node.js või lihtsalt Node), Internetis on sellest kõmu.

Selles artiklis näitan teile, kuidas alustada JavaScripti rakenduste väljatöötamist Linuxi Node.js abil. Kõigepealt laseme lühidalt tutvustada Node.js-i

Mis on Node.js?

Node.js on Chrome'i V8 JavaScripti mootorile ehitatud avatud lähtekoodiga, kerge ja tõhus JavaScripti käitusaeg. See on loodud ilma lõimideta (üheahelaline) ja sellel on sarnane rakendus Twisted, võrgumootor, mis on ehitatud Pythoni või Event Machine abil, mis on Ruby programmide sündmuste töötlemise kogu.

Node.js süda põhineb sündmustel põhineval programmeerimisel; programmeerija peaks seetõttu mõistma, millised sündmused on saadaval ja kuidas neile reageerida.

Paketihaldus jaotise Node.js all

Node.js kasutab JavaScripti paketihaldurit ja ökosüsteemi nimega\"npm", mis sisaldab tohutut tasuta avatud lähtekoodiga teekide kogu. See toetab moodulitarkvara arendamist. Selle abil saate installida sõlmpakette, jagada, jagada koodi ja hallata pakendisõltuvused.

Node.js on võimas ja seega oluline järgmistel põhjustel:

  • See kasutab asünkroonset sündmustepõhist mitteblokeerivat I/O-täitmismudelit, mis parandab rakenduse läbilaskevõimet ja toetab reaalsete veebirakenduste mastaapsust.
  • See on üheahelaline, nii et see võib igal ajahetkel kasutada ainult ühte protsessorit.
  • Node.js veebirakendus on täielik veebiserver, näiteks Nginx või Apache.
  • See toetab niiteid lapse_process.fork() API kaudu lapse kudemise jaoks ja pakub ka klastrimoodulit.

Selle lühitutvustusega peate olema valmis kirjutama oma esimese JavaScripti programmi. Esiteks peate esmalt installima Node.js ja NPM paketid oma Linuxi süsteemi järgmise juhendi abil.

  1. Installige uusimad Nodejs ja NPM versioon Linuxi süsteemidesse

Kuidas luua oma esimene rakendus Node.js Linuxis

Kui olete Node.js installinud, olete valmis minema. Kõigepealt loo kataloog, mis salvestab teie rakenduse failid.

$ sudo mkdir -p /var/www/myapp

Seejärel liikuge sellesse kataloogi ja looge oma rakenduse jaoks fail package.json . See fail on teie projekti jaoks väike dokumentatsioon: projekti nimi, autor, pakettide loend, millest see sõltub, ja nii edasi.

$ cd /var/www/myapp
$ npm init

See esitab teile hulga küsimusi, vastake lihtsalt allpool kirjeldatud viisil ja vajutage [Enter]. Pange tähele, et kõige olulisemad asjad package.json on nime ja versiooni väljad, nagu allpool selgitatud.

  • paketi nimi - teie rakenduse nimi, vaikimisi kataloogi nimi.
  • versioon - teie rakenduse versioon.
  • kirjeldus - kirjutage oma rakenduse jaoks lühikirjeldus.
  • sisestuspunkt - määrab käivitatava vaikepaketi faili.
  • testkäsk - kasutatakse testskripti loomiseks (vaikimisi tühi skript).
  • git-hoidla - määrake Giti-hoidla (kui teil seda on).
  • märksõnad - määrake märksõnad, mis on olulised teistele kasutajatele teie paketi tuvastamiseks npm-l.
  • autor - määrab autori nime, pange siia oma nimi.
  • litsents - määrake oma rakenduse/paketi litsents.

Järgmisena looge fail server.js .

$ sudo vi server.js

Kopeerige ja kleepige sinna allolev kood.

var http = require('http');
http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.end('Hello World!');
}).listen(8080);
console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');

Järgmisena käivitage rakendus järgmise käsuga.

$ node server.js
OR
$ npm start

Järgmisena avage veebibrauser ja pöörduge oma veebirakenduse poole, mis ei tee midagi muud peale stringi „Tere maailm!” Printimise, kasutades aadressi:

http://localhost:3333

Meie ülaltoodud koodis on peamiseks töödeldavaks sündmuseks HTTP-päring HTTP-mooduli kaudu.

Node.js-s on moodulid pigem nagu JavaScripti teegid, need sisaldavad funktsioone, mida saate oma rakenduses uuesti kasutada. Võite kasutada sisseehitatud mooduleid, kolmkümmend peomoodulit või luua oma.

Rakenduses moodulite helistamiseks kasutage nõutavat funktsiooni, nagu näidatud.

var http = require('http');

Kui http-moodul on lisatud, loob see serveri, mis kuulab konkreetset porti (selles näites 3333). Meetod http.creatServer loob tegeliku http-serveri, mis aktsepteerib argumendina funktsiooni (mida kutsutakse siis, kui klient proovib rakendusele juurde pääseda).

http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.end('Hello World!');
}).listen(8080);

Funktsioonil saidil http.createServer on kaks argumenti: req (taotlus) ja res (vastus). Req-argument on kasutaja või kliendi taotlus ja res-argument saadab kliendile vastuse.

res.writeHead(200, { 'Content-Type': 'text/plain' });		#This is a response HTTP header
res.end('Hello World!');

Koodi viimane osa saadab väljundi konsoolile, kui server on käivitatud.

console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');

Selles jaotises selgitan Node.js-i programmeerimise üht olulisemat mõistet, mida nimetatakse marsruutimiseks (võrreldav marsruutimisega arvutivõrgu all: võrgus liikluse raja leidmise protsess).

Siin on marsruutimine kliendi soovide käsitlemise tehnika; kliendi soovitud sisu serveerimine vastavalt URL-ile. URL koosneb tee- ja päringistringist.

Kliendi päringupäringu stringi vaatamiseks võime vastusesse lisada järgmised read.

res.write(req.url);
res.end()

Allpool on uus kood.

var http = require('http');
http.createServer(function(req,res){
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.write(req.url);
      res.end();		
      }).listen(8080);
console.log('Server started on localhost:8080; press Ctrl-C to terminate...!');

Salvestage fail ja käivitage rakendus uuesti järgmise käsu abil.

$ node server.js
OR
$ npm start

Sisestage veebibrauseris erinevad URL-id, mis kuvatakse allpool näidatult.

http://localhost:3333
http://localhost:3333/about
http://localhost:3333/tecmint/authors

Nüüd loome Tecmintile tõeliselt väikese veebisaidi, millel on avaleht, umbes ja autorite lehed. Kuvame nendel lehtedel natuke teavet.

Avage redigeerimiseks fail server.js ja lisage sellesse allolev kood.

//include http module 
var http = require('http');

http.createServer(function(req,res){
	//store URL in variable q_string

	var q_string = req.url;
	switch(q_string) {
		case '/':
                        	res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('Welcome To linux-console.net!')
                        	res.end();
                        	break;
                	case '/about':
                		res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('About Us');
                        	res.write('\n\n');
                        	res.write('linux-console.net - Best Linux HowTos on the Web.');
                        	res.write('\n');
                        	res.end('Find out more: https://linux-console.net/who-we-are/');
                        	break;
                	case '/tecmint/authors':
                        	res.writeHead(200, { 'Content-Type': 'text/plain' });
                        	res.write('Tecmint Authors');
                        	res.write('\n\n');
                        	res.end('Find all our authors here: https://linux-console.net/who-we-are/');
                        	break;
                	default:
                       		res.writeHead(404, { 'Content-Type': 'text/plain' });
                       		res.end('Not Found');
                        	break;
	}
}).listen(3333);
console.log('Server started on localhost:3333; press Ctrl-C to terminate....');

Ülaltoodud koodis oleme näinud, kuidas kirjutada kommentaare Node.js-s, kasutades märke /, ning tutvustasime ka klientide taotluste suunamiseks lülitite ja juhtumite avaldusi.

Salvestage fail, käivitage server ja proovige juurdepääsu erinevatele lehtedele.

Praegu on see kõik! Lisateavet leiate NPM-i veebisaitidelt.

Node.js on täna tõusmas uutele tippudele, see on muutnud täispika arendamise senisest palju lihtsamaks. See on ainulaadne sündmuspõhise programmeerimise filosoofia, mis võimaldab teil luua välkkiireid, tõhusaid ja skaleeritavaid veebiprotsesse ja servereid.

Järgmisena selgitame Node.js raamistikke, mis laiendavad oma loomulikke võimalusi veebi-/mobiilirakenduste kiireks ja usaldusväärseks arendamiseks. Jagage oma mõtteid selle artikli kohta alloleva kommentaaride jaotise kaudu.