Creare un server web HTTP in Node.js: tutorial con Code Esempio
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.
Esistono numerosi moduli come il modulo โhttpโ e โrichiestaโ, che aiuta a elaborare le richieste relative al server nello spazio del server web. Daremo un'occhiata a come possiamo creare un'applicazione server web di base utilizzando Nodo 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 resterร in ascolto sulla porta n. 7000. Se viene effettuata una richiesta tramite il browser su questa porta n., l'applicazione server invierร una risposta "Hello World" al client.
Code Spiegazione
- La funzionalitร di base della funzione require รจ che legge a JavaCopione file, 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 richiamata 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 risposta normale che viene inviata in un'intestazione http quando viene inviata una risposta positiva al client.
- Nella risposta stessa, inviamo la stringa "Hello World".
- Utilizzeremo quindi la funzione server.listen per fare in modo che la nostra applicazione server ascolti le richieste del client sulla porta n. 7000. Puoi specificare qualsiasi porta disponibile qui.
Se il comando viene eseguito correttamente, quando si esegue il codice nel browser verrร visualizzato il seguente output.
Uscita
Dall'uscita,
- Si puรฒ chiaramente vedere che se navighiamo verso URL Accedendo a localhost sulla porta 7000, vedrai la stringa 'Hello World' visualizzata nella pagina.
- Poichรฉ nel nostro codice abbiamo menzionato specificamente che il server รจ in ascolto sulla porta n. 7000, siamo in grado di visualizzare l'output quando navighiamo verso questo URL.
Ecco il codice come 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
Effettuare 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 installare il modulo request. Questo puรฒ essere fatto eseguendo la seguente riga nella riga di comando
richiesta di installazione npm
Il comando precedente richiede al gestore pacchetti Node di scaricare i moduli di richiesta richiesti e installarli di conseguenza.
Una volta installato correttamente il modulo npm, 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 'request'.
Code Spiegazione
- 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 chiamiamo una funzione quando viene ricevuta una risposta. Quando viene ricevuta una risposta, i parametri (errore, risposta e corpo) avranno i seguenti valori
- Errore: nel caso in cui venga ricevuto un errore durante l'utilizzo della richiesta GET, verrร registrato qui.
- Risposta: la risposta avrร le intestazioni http che verranno restituite nella risposta.
- Corpo - Il corpo conterrร l'intero contenuto della risposta inviata da Google.
- In questo caso stiamo semplicemente scrivendo il contenuto ricevuto nel parametro body nel file console.log. Quindi, in pratica, qualunque cosa otterremo andando www.google.com verrร scritto nel file console.log.
Ecco il codice come riferimento
var request = require("request");
request("http://www.google.com",function(error,response,body)
{
console.log(body);
});
Sintesi
- 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 porta particolare e invii una risposta al client ogni volta che viene effettuata una richiesta all'applicazione.
- Il modulo 'richiesta' puรฒ essere utilizzato per ottenere informazioni da siti web. Le informazioni conterrebbero l'intero contenuto della pagina web richiesta dal relativo sito web.




