Come effettuare richieste HTTP con il modulo di richiesta Node.js?

Come Effettuare Richieste Http Con Il Modulo Di Richiesta Node Js



Le richieste HTTP sono la parte più importante e integrante di qualsiasi applicazione interattiva, queste richieste gestiscono il trasferimento di dati tra il client e il lato server. Se l'utente richiede dati sulla query specifica, invierà una richiesta e la risposta di questa richiesta contenente i dati richiesti verrà inviata dal server. L'intera procedura dipende o utilizza il ' HTTP ' richieste che possono essere create utilizzando moduli esterni come ' richiesta ”.

Questa guida spiega la procedura per effettuare richieste HTTP con il modulo di richiesta Node.js coprendo le sezioni seguenti:

Come effettuare richieste HTTP con il modulo di richiesta Node.js?







Alternative al modulo di richiesta Node.js



Conclusione



Come effettuare richieste HTTP utilizzando il modulo di richiesta Node.js?

IL ' richiesta ' è il modulo più semplice che aiuta a inviare o recuperare richieste HTTP. Questo modulo è troppo semplice e facile da capire, ma offre pochissima libertà agli sviluppatori. Inoltre, lo sviluppatore non può modificare facilmente le sue funzionalità di base o migliorare le funzionalità fornite.





Nota: Sebbene il ' richiesta ' è un buon modulo. Tuttavia, i suoi creatori hanno deciso di smettere di lavorare su questo modulo ed è stato completamente deprecato l'11 febbraio 2020.

Tuttavia, se desideri ancora avere un’idea sull’implementazione di questo “ richiesta ' modulo quindi visitare i passaggi indicati di seguito.



Passaggio 1: installazione del modulo 'richiesta' e inizializzazione del progetto Node.js

Inizia inizializzando il ' npm ' pacchetti all'interno della directory desiderata per creare un progetto Node.js eseguendo il comando:

npm init - E

L'output mostra che 'npm' è stato inizializzato con successo nella directory fornita:

Quindi, installa il 'richiesto' richiesta ' modulo eseguendo il comando:

richiesta di installazione npm

L'output mostra che l'installazione è stata completata ma poiché questo modulo è deprecato ecco perché l'avviso deprecato è stato inviato da 'npm':

Passaggio 2: inserimento del codice fittizio

Creare un ' .js ” all'interno della directory del progetto Node.js, è il file in cui i programmi vengono inseriti ed eseguiti successivamente. Quindi, inserisci le righe di codice seguenti per illustrare l'implementazione pratica del ' richiesta ', come mostrato di seguito:

cost reqObj = richiedere ( 'richiesta' )

lascia che baseUrl = 'https://jsonplaceholder.typicode.com/todos/6' ;

reqObj ( URL base, ( problemi, contenuti ) => {

Se ( problemi ) consolle. tronco d'albero ( problemi )

consolle. tronco d'albero ( contenuto ) ;

} ) ;

La spiegazione del blocco di codice sopra è la seguente:

  • Prima il ' richiesta ' Il modulo è stato importato e il suo oggetto è memorizzato in una nuova variabile denominata ' reqObj ”.
  • Successivamente, l'URL di alcuni file JSON online il cui contenuto deve essere recuperato viene passato come valore per ' baseUrl 'variabile denominata.
  • Poi il ' reqObj La variabile ' viene richiamata come costruttore e la variabile ' baseUrl ' viene passato come primo parametro e la funzione di callback come secondo parametro.
  • All'interno della funzione di richiamata, il ' Se ' viene utilizzata per visualizzare eventuali errori verificatisi e i dati recuperati vengono visualizzati anche nella finestra della console.

Passaggio 3: esecuzione

Per eseguire il codice precedente, eseguire il file contenente denominato ' proApp.js ” nel nostro caso utilizzando il comando:

nodo proApp. js

L'output dopo l'esecuzione mostra che i dati specificati sono stati recuperati e visualizzati sulla console:

Alternative al modulo di richiesta Node.js

A causa della deprecazione del “ richiesta ', ci sono molti nuovi moduli esterni che possono essere utilizzati per eseguire funzionalità simili. Questi moduli alternativi sono indicati di seguito:

Alternative Descrizione
recupero del nodo È una promessa o un modulo basato su stream che porta un metodo window.fetch() in Node.js.
http IL ' http ' è il modulo predefinito fornito da Node.js e fornisce diversi metodi per interagire con i server http fornendo allo stesso tempo maggiore libertà.
assi Basato esclusivamente su promesse e flussi per eseguire richieste HTTP sul browser sia dal server che dal client.
avuto È estremamente user-friendly e la libreria più potente per le richieste HTTP.
superagente Basato su concatenamenti e promesse fornendo al contempo supporto per molti client HTTP di alto livello. Ha anche una curva di apprendimento bassa.
piegato È un HTTP funzionale che restituisce una funzione di tipo asincrono.
fare in modo che accada Una forma migliorata di “ recupero del nodo ' modulo. Ora include il 'pooling delle richieste', il 'supporto della cache' e molto altro ancora.
ago Questo modulo è il modulo più chiaro e avanzato. Viene utilizzato principalmente per recuperare dati inviando richieste a fonti di terze parti.
tiny-json-http Client HTTP minimalista utilizzato per eseguire i payload JSON.

Ora, eseguiamo le richieste HTTP utilizzando alcuni moduli discussi sopra.

Metodo 1: effettuare richieste HTTP utilizzando il modulo HTTP predefinito

IL ' http ' è un modulo predefinito poiché viene installato automaticamente al momento dell'inizializzazione del progetto node.js eseguendo il comando ' npm init ' O ' npm init -y ”. Poiché abbiamo già creato un progetto node.js, saltiamo i passaggi di inizializzazione dimostrati all'inizio di questo articolo e ci immergiamo direttamente nella creazione di richieste http utilizzando il modulo 'http'.

Nello snippet di codice seguente, il server è stato creato e come risposta, il messaggio fittizio viene inviato al server:

cost httpObj = richiedere ( 'http' ) ;

cost localServer = httpObj. creareServer ( ( richiedere risposta ) => {

risposta. scrivere ( 'Benvenuti sulla pagina Twitter' ) ;

risposta. FINE ( ) ;

} ) ;

localServer. Ascoltare ( 8080 , ( ) => {

consolle. tronco d'albero ( 'server avviato al numero di porta 8080.' ) ;

} ) ;

Nel blocco di codice sopra:

  • Prima il ' http ' Il modulo è stato importato all'interno del file corrente e il suo oggetto è memorizzato in una nuova variabile denominata ' httpObj ”.
  • Successivamente, il server denominato ' localServer ' viene creato invocando il ' creaServer() ' e passando la funzione di callback come parametro.
  • All'interno di questa funzione, invoca un ' scrivere() ' e assegnargli un messaggio fittizio che viene visualizzato sul server. Inoltre, chiudi la sessione di risposta invocando il comando ' FINE() ', il messaggio fittizio casuale può anche essere inserito all'interno della parentesi del metodo.
  • Successivamente, esegui l'esecuzione di questo server sull'host locale con il numero di porta ' 8080 ' invocando il ' Ascoltare() ' metodo.

Esegui il codice sopra contenente il file eseguendo il comando seguente:

nodo < nome del file. js >

L'output generato conferma che le richieste HTTP sono state eseguite tramite l'impostazione predefinita ' http ' modulo:

Metodo 2: effettuare una richiesta HTTP utilizzando il modulo Axios esterno

IL ' assi ' è il modulo più popolare e ampiamente utilizzato quando si tratta di eseguire richieste HTTP in un ambiente in tempo reale. Per utilizzare questo modulo, lo sviluppatore deve prima installarlo eseguendo il comando seguente:

npm installa axios

Dopo aver eseguito il comando, il terminale appare così:

Ora, diamo un'occhiata a un esempio in cui il ' OTTENERE 'La richiesta HTTP verrà utilizzata per recuperare i dati da un'API casuale. Quindi, anche i dati ricevuti vengono visualizzati sulla console:

cost assiosObj = richiedere ( 'axios' ) ;

// URL dell'API JSON Placeholder per selezionare solo parte dei dati con ID 5

cost apiUrl = 'https://jsonplaceholder.typicode.com/todos/5' ;

//Inizializzazione della richiesta GET

assiosObj. Ottenere ( apiUrl )

. Poi ( risposta => {

consolle. tronco d'albero ( 'Lo stato della risposta dall'API è:' , risposta. stato ) ;

consolle. tronco d'albero ( 'I dati ricevuti dall'API come risposta alla richiesta:' , risposta. dati ) ;

} )

. presa ( errore => {

consolle. errore ( 'L'errore si è verificato:' , errore ) ;

} ) ;

La spiegazione del blocco di codice sopra è riportata di seguito:

  • Innanzitutto, importa il ' assi ' e memorizza la sua istanza nella variabile denominata ' assiosObj ” che funge da oggetto della libreria “axios”.
  • Successivamente, crea una variabile “ apiUrl ' e memorizza l'URL dell'API da cui è necessario recuperare i dati. Nel nostro caso, l'URL è ' https://jsonplaceholder.typicode.com/todos/5 ' perché vogliamo recuperare i dati che hanno un ID di ' 5 ”.
  • Ora, con l’aiuto di “ assiosObj ' invoca il ' Ottenere() ' e passare il ' appURL ' variabile all'interno di questa parentesi di metodo.
  • Allega il “ Poi() ' metodo con il ' Ottenere() ' e creare una funzione freccia anonima che contenga un singolo parametro di ' risposta ”.
  • Questo ' risposta ” funge da oggetto contenente i valori o i dati restituiti in risposta alla richiesta tramite il “ Ottenere() ' metodo.
  • Con l’aiuto di questo “ risposta ', recuperare lo stato della richiesta e il contenuto allegando l'oggetto ' stato ' E ' dati 'parole chiave accanto ad essa.
  • Infine, allega il “ presa() ' Metodo che visualizza gli eventuali errori verificatisi durante l'esecuzione del programma.

Ora compila il codice sopra nell'ambiente Node.js utilizzando il comando seguente sul terminale:

nodo < nome del file >

L'output visualizzato mostra che i dati richiesti sono stati recuperati dalla fonte fornita come risposta e visualizzati nella finestra della console:

Si tratta solo di effettuare richieste HTTP con il modulo di richiesta Node.js e di una rapida panoramica delle sue alternative.

Conclusione

Per effettuare una richiesta HTTP tramite il ' richiesta ', l'URL richiesto da cui verrà eseguito il recupero. Quindi, viene creata l'istanza del modulo 'richiesta' e l'URL selezionato per il quale deve essere implementata la richiesta HTTP viene passato come primo parametro. La funzione di callback richiesta viene utilizzata anche per verificare eventuali errori verificatisi e recuperare il contenuto o la risposta della richiesta HTTP. Questa guida ha spiegato il processo di creazione di richieste HTTP utilizzando il modulo di richiesta.