Il framework Node.js viene utilizzato principalmente per creare applicazioni basate su server. Il framework può essere facilmente utilizzato per creare server Web in grado di fornire contenuti agli utenti.
Ci sono una varietà di moduli come il modulo "http" e "request", che aiuta nell'elaborazione delle richieste relative al server nello spazio webserver. Daremo uno sguardo a come possiamo creare un'applicazione server web di base utilizzando Node js.
Nodo come server Web utilizzando HTTP
Diamo un'occhiata a un esempio di come creare ed eseguire la nostra prima applicazione Node js.
La nostra applicazione creerà un semplice modulo server che ascolterà sulla porta n. 7000. Se viene effettuata una richiesta tramite il browser su questa porta no, l'applicazione server invierà una risposta "Hello World" al client.
Spiegazione del codice:
- La funzionalità di base della funzione require è che legge un file JavaScript, esegue il file e quindi procede a restituire l'oggetto di esportazione. Quindi nel nostro caso, poiché vogliamo utilizzare la funzionalità del modulo http, utilizziamo la funzione require per ottenere le funzioni desiderate dal modulo http in modo che possa essere utilizzato nella nostra applicazione.
- In questa riga di codice, stiamo creando un'applicazione server basata su una semplice funzione. Questa funzione viene chiamata ogni volta che viene effettuata una richiesta alla nostra applicazione server.
- Quando viene ricevuta una richiesta, stiamo dicendo di inviare una risposta con un tipo di intestazione "200". Questo numero è la normale risposta che viene inviata in un'intestazione http quando una risposta riuscita viene inviata al client.
- Nella risposta stessa, stiamo inviando la stringa "Hello World".
- Stiamo quindi utilizzando la funzione server.listen per fare in modo che la nostra applicazione server ascolti le richieste dei client sulla porta n. 7000. Puoi specificare qualsiasi porta disponibile qui.
Se il comando viene eseguito correttamente, verrà visualizzato il seguente output quando si esegue il codice nel browser.
Produzione:
Dall'uscita,
- Puoi vedere chiaramente che se navighiamo all'URL di localhost sulla porta 7000, vedrai la stringa "Hello World" visualizzata nella pagina.
- Poiché nel nostro codice abbiamo menzionato specificamente per il server di ascoltare sulla porta n. 7000, siamo in grado di visualizzare l'output durante la navigazione a questo URL.
Ecco il codice per il tuo riferimento
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);
Gestione delle richieste GET in Node.js
Fare una richiesta GET per ottenere i dati da un altro sito è relativamente molto semplice in Node.js. Per effettuare una richiesta Get nel nodo, dobbiamo prima avere installato il modulo di richiesta. Questo può essere fatto eseguendo la seguente riga nella riga di comando
richiesta di installazione npm
Il comando precedente richiede al gestore di pacchetti Node di scaricare i moduli di richiesta richiesti e installarli di conseguenza.
Quando il modulo npm è stato installato con successo, la riga di comando mostrerà il nome e la versione del modulo installato:
Nell'istantanea sopra, puoi vedere che il modulo "richiesta" insieme al numero di versione 2.67.0 è stato scaricato e installato.
Vediamo ora il codice che può utilizzare questo comando di "richiesta".
Spiegazione del codice:
- Stiamo utilizzando il modulo "richiesta" che è stato installato nell'ultimo passaggio. Questo modulo ha le funzioni necessarie che possono essere utilizzate per effettuare richieste GET ai siti web.
- Stiamo effettuando una richiesta GET a www.google.com e successivamente chiamando una funzione quando viene ricevuta una risposta. Quando viene ricevuta una risposta, i parametri (errore, risposta e corpo) avranno i seguenti valori
- Errore - In caso di errore ricevuto durante l'utilizzo della richiesta GET, verrà registrato qui.
- Risposta: la risposta avrà le intestazioni http che vengono restituite nella risposta.
- Body- Il corpo conterrà l'intero contenuto della risposta inviata da Google.
- In questo, stiamo solo scrivendo il contenuto ricevuto nel parametro body nel file console.log. Quindi, in pratica, tutto ciò che otteniamo andando su www.google.com verrà scritto su console.log.
Ecco il codice per il tuo riferimento
var request = require("request");request("http://www.google.com",function(error,response,body){console.log(body);});
Sommario
- Il framework Node.js può essere utilizzato per sviluppare server web utilizzando il modulo "http". È possibile fare in modo che l'applicazione sia in ascolto su una particolare porta e invii una risposta al client ogni volta che viene effettuata una richiesta all'applicazione.
- Il modulo "richiesta" può essere utilizzato per ottenere informazioni dai siti web. Le informazioni conterrebbero l'intero contenuto della pagina web richiesta dal sito web pertinente.