Hvernig á að skrifa fyrsta Node.js appið þitt í Linux


Vefþróunarþróun hefur breyst verulega á undanförnum árum og sem vefhönnuður, til að vera á toppnum í leiknum þínum, er mikilvægt að vera uppfærður með nýjustu tækni.

JavaScript er núverandi vinsæla forritunarmálið þarna úti; það er án efa vinsælasta tæknin sem notuð er af fullum stafla verktaki.

JavaScript veframmar eru orðnir töfrandi lausn fyrir hraðari vefþróun með algjörri skilvirkni, öryggi og lágmarkskostnaði. Ég er alveg viss um að þú hefur heyrt um Node JavaScript (almennt nefnt Node.js eða einfaldlega Node), það er suð um það á netinu.

Í þessari grein mun ég sýna þér hvernig á að byrja að þróa forrit í JavaScript með því að nota Node.js í Linux. En fyrst skulum við fá stutta kynningu á Node.js.

Hvað er Node.js?

Node.js er opinn uppspretta, léttur og skilvirkur JavaScript keyrslutími byggður á V8 JavaScript vél Chrome. Það er hannað án þráða (einþráða) og hefur svipaða útfærslu og Twisted, netvél byggð með Python eða Event Machine, atburðavinnslusafn fyrir Ruby forrit.

Hjarta Node.js byggir á atburðadrifinni forritun; forritari ætti því að skilja hvaða atburðir eru í boði og hvernig á að bregðast við þeim.

Pakkastjórnun undir Node.js

Node.js notar JavaScript pakkastjórann og vistkerfið sem kallast npm, sem inniheldur gríðarlegt safn af ókeypis opnum uppsprettu bókasöfnum. Það styður fyrir mát hugbúnaðarþróun. Þú getur notað það til að setja upp hnútapakka, deila, dreifa kóðanum þínum og stjórna ósjálfstæði pakka.

Node.js er öflugt og því mikilvægt af eftirfarandi ástæðum:

  • Það notar ósamstillt atburðadrifið, óblokkandi I/O líkan af framkvæmd, sem bætir afköst forrits og styður sveigjanleika fyrir raunveruleg vefforrit.
  • Það er einn þráður svo það getur aðeins notað 1 örgjörva á hverjum tíma.
  • Node.js vefforrit er heill vefþjónn, til dæmis Nginx eða Apache.
  • Það styður þræði í gegnum child_process.fork() API, til að kveikja undirferli, og býður einnig upp á klasareiningu.

Með þessari stuttu kynningu verður þú að vera fús til að skrifa fyrsta JavaScript forritið þitt. Hins vegar, fyrst og fremst þarftu að setja upp Node.js og NPM pakka á Linux kerfinu þínu með því að nota eftirfarandi handbók.

  1. Settu upp nýjustu útgáfu Nodejs og NPM í Linux kerfum

Hvernig á að búa til fyrsta Node.js appið þitt í Linux

Þegar þú hefur sett upp Node.js ertu tilbúinn að fara. Byrjaðu fyrst á því að búa til möppu sem geymir forritaskrárnar þínar.

$ sudo mkdir -p /var/www/myapp

Farðu síðan inn í þá möppu og búðu til package.json skrá fyrir forritið þitt. Þessi skrá hjálpar sem lítil skjöl fyrir verkefnið þitt: nafn verkefnis, höfundur, listi yfir pakka sem það veltur á og svo framvegis.

$ cd /var/www/myapp
$ npm init

Þetta mun spyrja þig fjölda spurninga, svaraðu einfaldlega eins og lýst er hér að neðan og ýttu á [Enter]. Athugaðu að það mikilvægasta í package.json eru nafn- og útgáfureitirnir eins og útskýrt er hér að neðan.

  • nafn pakka – nafn forritsins þíns, er sjálfgefið nafn möppu.
  • útgáfa – útgáfa af forritinu þínu.
  • lýsing – skrifaðu stutta lýsingu fyrir forritið þitt.
  • aðgangspunktur – stillir sjálfgefna pakkaskrá til að keyra.
  • prófunarskipun – notuð til að búa til prófunarforskrift (sjálfgefið er tómt handrit).
  • git geymsla – skilgreindu Git geymslu (ef þú ert með slíka).
  • leitarorð – stilltu leitarorð, mikilvægt fyrir aðra notendur til að auðkenna pakkann þinn á npm.
  • höfundur – tilgreinir nafn höfundar, settu nafnið þitt hér.
  • leyfi – tilgreindu leyfi fyrir forritið/pakkann.

Næst skaltu búa til server.js skrá.

$ sudo vi server.js

Afritaðu og límdu kóðann hér að neðan.

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

Næst skaltu byrja forritið þitt með eftirfarandi skipun.

$ node server.js
OR
$ npm start

Næst skaltu opna vafra og opna vefforritið þitt, sem gerir ekkert mikið annað en að prenta strenginn „Halló heimur!“, með því að nota heimilisfangið:

http://localhost:3333

Í kóðanum okkar hér að ofan er aðalatburðurinn sem er í vinnslu HTTP beiðni í gegnum HTTP eininguna.

Í Node.js eru einingar meira eins og JavaScript bókasöfn, þær innihalda aðgerðir sem þú getur endurnýtt í appinu þínu. Þú getur notað innbyggðar einingar, þrjátíu aðila einingar eða búið til þínar eigin.

Til að hringja í einingar í forritinu þínu skaltu nota kröfuaðgerðina eins og sýnt er.

var http = require('http');

Þegar http einingin er innifalin mun hún búa til netþjón sem hlustar á tiltekna höfn (3333 í þessu dæmi). http.creatServer aðferðin býr til raunverulegan http miðlara sem tekur við falli (sem er kallað fram þegar viðskiptavinur reynir að fá aðgang að appinu) sem rök.

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

Fallið í http.createServer hefur tvö rök: req(request) og res(response). Req rökin eru beiðni frá notanda eða viðskiptavini og res rökin senda svar til viðskiptavinarins.

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

Síðasti hluti kóðans sendir úttak til stjórnborðsins, þegar þjónninn er ræstur.

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

Í þessum hluta mun ég útskýra eitt mikilvægasta hugtakið undir Node.js forritun sem kallast routing (sambærilegt við routing undir tölvuneti: ferli við að finna slóð fyrir umferð á neti).

Hér er leiðsögn tækni til að meðhöndla beiðni viðskiptavinar; þjóna efninu sem viðskiptavinurinn hefur beðið um, eins og tilgreint er í vefslóðinni. Vefslóð er gerð úr slóð og fyrirspurnarstreng.

Til að skoða fyrirspurnarstreng viðskiptavinar getum við bætt við línunum hér að neðan í svari okkar.

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

Hér að neðan er nýi kóðinn.

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

Vistaðu skrána og ræstu forritið þitt aftur með eftirfarandi skipun.

$ node server.js
OR
$ npm start

Í vafra skaltu slá inn mismunandi vefslóðir sem birtast eins og sýnt er hér að neðan.

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

Nú munum við búa til mjög litla vefsíðu fyrir Tecmint með heimasíðu, um og höfundasíður. Við munum birta nokkrar upplýsingar á þessum síðum.

Opnaðu server.js skrána til að breyta og bættu kóðanum fyrir neðan í hana.

//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....');

Í kóðanum hér að ofan höfum við séð hvernig á að skrifa athugasemdir í Node.js með því að nota // stafina og einnig kynnt rofa- og tilviksyfirlýsingar til að beina beiðnum viðskiptavina.

Vistaðu skrána, ræstu netþjóninn og reyndu að fá aðgang að hinum ýmsu síðum.

Það er það í bili! Þú getur fundið frekari upplýsingar á vefsíðum NPM.

Node.js er að rísa upp í nýjar hæðir í dag, það hefur gert fullan stafla þróun mun auðveldari en áður. Það er einstök hugmyndafræði um atburðadrifna forritun gerir þér kleift að búa til eldingarhraða, skilvirka og stigstærða vefferla og netþjóna.

Næst munum við útskýra Node.js ramma, sem auka innfædda möguleika þess til að þróa vef-/farsímaforrit fljótt og áreiðanlega. Deildu hugsunum þínum um þessa grein í gegnum athugasemdahlutann hér að neðan.