←
{Node.js} Cos’è un server e cosa sono le richieste http
home / javascript /
Lucio Paolo Asciolla
Senior Full Stack Developer
Un server, computer di rete, è un dispositivo con al suo interno un programma, nel nostro caso Node.js, che gestisce ed elabora le richieste da parte di un client.
Nel World Wide Web , ad esempio, un web-server è un computer, remoto sempre collegato in rete, che utilizza il protocollo HTTP per ricevere ed inviare informazioni, file o pagine web ad un altro computer.
In Node.js abbiamo già avuto modo di esaminare il modulo built-in 'http', per la creazione di un web-server ed abbiamo già visto come metterlo in ascolto.
Tenerlo in ascolto significa mantenerlo sempre collegato, in rete, in attesa delle richieste.
Le richieste sono inviate dai Client attraverso i browser es. Chrome, Safari, FireFox, Edge ecc.
Per le richieste da parte dei Client viene utilizzato il PROTOCOLLO HTTP per comunicare con i Server.
Questo protocollo serve a regolare:
Le richieste HTTP possono essere effettuate con diversi metodi:
| GET | richiede di ricevere informazioni/dati |
| POST | richiede di inviare informazioni/dati |
| PUT | richiede di modificare informazioni/dati |
| DELETE | richiede di cancellare informazioni/dati |
Tutte le richieste al server hanno uno stato-delle-richieste, uno stato-delle-risposte ed un header.
Le richieste che inviamo al server hanno uno status ed indicano lo stato della richiesta:
| 0 | richiesta non inizializzata |
| 1 | richiesta abilitata |
| 2 | il server ha ricevuto la richiesta |
| 3 | il server sta processando la richiesta |
| 4 | il server ha finito di processare la richiesta ed ha ritornato la risposta |
Il server può restituire i seguenti valori ed indicano gli esiti ovvero “come” il server ha risposto:
| 200 | il server ha trovato quanto richiesto e lo sta inviando o ha fatto quanto richiesto ed ha concluso |
| 404 | il server non ha trovato quello che cercavamo |
| … |
Per quanto concerne le risposte del server abbiamo un elenco molto più ambio ma per il momento ci concentreremo su quelle essenziali.
Gli headers HTTP non sono altro che l’insieme delle informazioni prodotte dall’interazione tra il browser del client, che invia delle richieste, ed il server, che le raccoglie e invia delle risorse in risposta ad esse.
Alcuni esempi di informazioni contenute in un header HTTP:
Esistono due tipi di HeaderHTTP.
Uno per le richieste ed uno per le risposte:
| Request Header HTTP | informazioni relative e contenute nella richieste al server |
| Response Header HTTP | informazioni relative e contenute nella risposta dal server |
