Okvir Node.js uglavnom se koristi za stvaranje aplikacija temeljenih na poslužitelju. Okvir se lako može koristiti za stvaranje web poslužitelja koji mogu poslužiti sadržaj korisnicima.
Postoje razni moduli poput modula "http" i "request", koji pomažu u obradi zahtjeva povezanih s poslužiteljem u prostoru web poslužitelja. Imat ćemo kako možemo stvoriti osnovnu aplikaciju web poslužitelja pomoću Node js.
Čvor kao web poslužitelj koji koristi HTTP
Pogledajmo primjer kako stvoriti i pokrenuti našu prvu Node js aplikaciju.
Naša će aplikacija stvoriti jednostavni modul poslužitelja koji će slušati na priključku br. 7000. Ako se zahtjev pošalje putem preglednika na ovom priključku br., Tada će aplikacija poslužitelja klijentu poslati odgovor 'Hello World'.
Objašnjenje koda:
- Osnovna funkcionalnost funkcije require je da čita JavaScript datoteku, izvršava je i zatim nastavlja s povratom objekta izvoza. Dakle, u našem slučaju, budući da želimo koristiti funkcionalnost http modula, koristimo funkciju require da bismo iz http modula dobili željene funkcije kako bi se mogao koristiti u našoj aplikaciji.
- U ovom retku koda stvaramo poslužiteljsku aplikaciju koja se temelji na jednostavnoj funkciji. Ova se funkcija poziva kad god se uputi zahtjev našoj poslužiteljskoj aplikaciji.
- Kad primimo zahtjev, govorimo da pošaljemo odgovor s vrstom zaglavlja "200". Ovaj je broj uobičajeni odgovor koji se šalje u http zaglavlju kada se uspješan odgovor pošalje klijentu.
- U samom odgovoru šaljemo niz "Hello World."
- Tada koristimo funkciju server.listen kako bi naša poslužiteljska aplikacija slušala zahtjeve klijenta na portu br. 7000. Ovdje možete odrediti bilo koji dostupan port.
Ako se naredba uspješno izvrši, sljedeći će se izlaz prikazati kada pokrenete svoj kôd u pregledniku.
Izlaz:
Iz rezultata,
- Jasno možete vidjeti da ćete, ako pretražimo URL lokalnog hosta na portu 7000, na stranici vidjeti niz 'Hello World'.
- Budući da smo u našem kodu posebno spomenuli da poslužitelj sluša na priključku br. 7000, u mogućnosti smo vidjeti izlaz prilikom pregledavanja ovog urla.
Evo koda za vašu referencu
var http=require('http')var server=http.createServer((function(request,response){response.writeHead(200,{"Content-Type" : "text/plain"});response.end("Hello World\n");}));server.listen(7000);
Rukovanje GET zahtjevima u Node.js
Podnošenje GET zahtjeva za dobivanje podataka s druge web stranice relativno je jednostavno u Node.js. Da bismo uputili zahtjev za dobivanje u čvoru, prvo moramo instalirati modul zahtjeva. To se može učiniti izvršavanjem sljedećeg retka u naredbenom retku
npm zahtjev za instalaciju
Gornja naredba zahtijeva od upravitelja paketa Node da preuzme potrebne module zahtjeva i instalira ih u skladu s tim.
Kada je vaš npm modul uspješno instaliran, naredbeni redak će pokazati ime i verziju instaliranog modula:
Na gornjoj snimci možete vidjeti da je modul 'zahtjev' zajedno s verzijom broj 2.67.0 preuzet i instaliran.
Sada da vidimo kod koji može koristiti ovu naredbu 'zahtjev'.
Objašnjenje koda:
- Koristimo modul 'zahtjev' koji je instaliran u zadnjem koraku. Ovaj modul ima potrebne funkcije koje se mogu koristiti za slanje GET zahtjeva web mjestima.
- Podnosimo GET zahtjev na www.google.com i naknadno pozivamo funkciju kada primimo odgovor. Kad se primi odgovor, parametri (pogreška, odgovor i tijelo) imat će sljedeće vrijednosti
- Pogreška - u slučaju da je primljena bilo kakva pogreška prilikom korištenja GET zahtjeva, ona će se ovdje zabilježiti.
- Odgovor - Odgovor će imati http zaglavlja koja se vraćaju u odgovor.
- Tijelo - Tijelo će sadržavati cjelokupni sadržaj odgovora koji je poslao Google.
- U ovom tekstu zapisujemo sadržaj primljen u parametru body u datoteku console.log. U osnovi, sve što dobijemo odlaskom na www.google.com bit će zapisano na console.log.
Evo koda za vašu referencu
var request = require("request");request("http://www.google.com",function(error,response,body){console.log(body);});
Sažetak
- Okvir Node.js može se koristiti za razvoj web poslužitelja pomoću modula 'http'. Aplikacija se može natjerati da preslušava na određenom priključku i pošalje odgovor klijentu kad god se zahtjev uputi aplikaciji.
- Modul 'zahtjev' može se koristiti za dobivanje informacija s web stranica. Podaci bi sadržavali cjelokupni sadržaj web stranice koja se traži od relevantne web stranice.