Luo HTTP-Web-palvelin Node.js: ssä: Suorita opetusohjelma

Sisällysluettelo:

Anonim

Node.js-kehystä käytetään enimmäkseen palvelinpohjaisten sovellusten luomiseen. Kehystä voidaan helposti käyttää luomaan verkkopalvelimia, jotka voivat palvella sisältöä käyttäjille.

On olemassa useita moduuleja, kuten "http" - ja "request" -moduulit, jotka auttavat palvelimiin liittyvien pyyntöjen käsittelyssä verkkopalvelintilassa. Katsomme, miten voimme luoda perusverkkopalvelinsovelluksen Node js: n avulla.

Solmu Web-palvelimena HTTP: n avulla

Tarkastellaan esimerkkiä ensimmäisen Node js -sovelluksen luomisesta ja ajamisesta.

Sovelluksemme aikoo luoda yksinkertaisen palvelinmoduulin, joka kuuntelee porttia nro 7000. Jos pyyntö tehdään tämän selaimen kautta olevan selaimen kautta, palvelinsovellus lähettää asiakkaalle "Hello World" -vastauksen.

Koodin selitys:

  1. Vaadi-toiminnon perustoiminnot ovat, että se lukee JavaScript-tiedoston, suorittaa tiedoston ja palauttaa sitten vientiobjektin. Joten meidän tapauksessamme, koska haluamme käyttää http-moduulin toiminnallisuutta, käytämme vaadittavaa toimintoa saadaksesi halutut toiminnot http-moduulista, jotta sitä voidaan käyttää sovelluksessamme.
  2. Tässä koodirivissä luomme palvelinsovelluksen, joka perustuu yksinkertaiseen toimintoon. Tätä toimintoa kutsutaan aina, kun palvelusovellukselle tehdään pyyntö.
  3. Kun pyyntö on vastaanotettu, sanomme lähettävän vastauksen otsikkotyypillä "200". Tämä numero on normaali vastaus, joka lähetetään http-otsikossa, kun onnistunut vastaus lähetetään asiakkaalle.
  4. Itse vastauksessa lähetämme merkkijonon "Hello World".
  5. Sitten käytämme server.listen-toimintoa saadaksemme palvelinsovelluksen kuuntelemaan asiakaspyyntöjä portissa nro 7000. Voit määrittää minkä tahansa käytettävissä olevan portin täältä.

Jos komento suoritetaan onnistuneesti, seuraava tulos näkyy, kun suoritat koodisi selaimessa.

Tuotos:

Lähdöstä

  • Voit selvästi nähdä, että jos selataan portin 7000 paikallisen isännän URL-osoitteeseen, näet sivulla merkkijonon "Hello World".
  • Koska koodissamme olemme maininneet nimenomaan palvelimen kuuntelemiseksi portissa nro 7000, pystymme tarkastelemaan tulosta, kun selaat tätä URL-osoitetta.

Tässä on viitteesi koodi

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);

GET-pyyntöjen käsittely Node.js-tiedostossa

Gode-pyynnön tekeminen tietojen hakemiseksi toisesta sivustosta on suhteellisen yksinkertaista Node.js: ssä. Jos haluat tehdä haun pyynnön solmusta, meidän on ensin asennettava pyyntömoduuli. Tämä voidaan tehdä suorittamalla seuraava rivi komentorivillä

npm -asennuspyyntö

Yllä oleva komento pyytää Node-paketinhallintaa lataamaan vaaditut pyyntömoduulit ja asentamaan ne vastaavasti.

Kun npm-moduuli on asennettu onnistuneesti, komentorivillä näkyy asennetun moduulin nimi ja versio: @ .

Yllä olevasta tilannekuvasta näet, että 'request' -moduuli ja versionumero 2.67.0 ladattiin ja asennettiin.

Katsotaan nyt koodi, joka voi käyttää tätä 'pyyntö' -komentoa.

Koodin selitys:

  1. Käytämme 'request' -moduulia, joka asennettiin viimeiseen vaiheeseen. Tässä moduulissa on tarvittavat toiminnot, joita voidaan käyttää GET-pyyntöjen tekemiseen verkkosivustoille.
  2. Lähetämme GET-pyynnön osoitteeseen www.google.fi ja soitamme myöhemmin toiminnolle, kun vastaus on vastaanotettu. Kun vastaus on vastaanotettu, parametreilla (virhe, vaste ja teksti) on seuraavat arvot
    1. Virhe - Jos GET-pyynnön käytössä on virheitä, se tallennetaan tähän.
    2. Vastaus - Vastauksessa on http-otsikot, jotka lähetetään takaisin vastauksessa.
    3. Runko - Runko sisältää Googlen lähettämän vastauksen koko sisällön.
  3. Tässä kirjoitamme vain body-parametriin vastaanotettua sisältöä console.log-tiedostoon. Joten mitä tahansa saamme käymällä osoitteessa www.google.com , kirjoitetaan konsoliin.log.

Tässä on viitteesi koodi

var request = require("request");request("http://www.google.com",function(error,response,body){console.log(body);});

Yhteenveto

  • Node.js-kehystä voidaan käyttää web-palvelinten kehittämiseen käyttämällä 'http' -moduulia. Sovellus voidaan saada kuuntelemaan tietyssä portissa ja lähettämään vastaus asiakkaalle aina, kun sovellukselle tehdään pyyntö.
  • 'Pyyntö' -moduulia voidaan käyttää tietojen hakemiseen verkkosivustoilta. Tiedot sisältäisivät kyseiseltä verkkosivustolta pyydetyn verkkosivun koko sisällön.