Chiamate API Postman

Introduzione
Questo articolo approfondirà i fondamenti dei servizi web, fornendo la conoscenza e gli esempi pratici necessari per diventare competenti nell’effettuare chiamate API con Postman.
I servizi web sono stati un componente fondamentale delle applicazioni moderne per oltre due decenni, evolvendosi significativamente dai primi anni 2000. Questi servizi fanno ampio affidamento sulle API (Application Programming Interfaces) per comunicare e scambiare dati. In qualità di sviluppatori e tester, abbiamo bisogno di strumenti robusti per interagire efficacemente con queste API. Ed è qui che Postman – un popolare strumento per il testing e lo sviluppo delle API entra in gioco.
L’interfaccia Web di DataSunrise si basa su chiamate API che utilizzano richieste POST RPC e basate su JSON. Anche quando viene eseguito un comando nella Command Line Interface (CLI), il JSON necessario viene creato in base alle opzioni del comando, che viene poi passato al backend per chiamare l’RPC richiesto. Questo processo viene utilizzato anche nella Web Console per creare e gestire regole ed altre configurazioni.
Che Cos’è Postman?
Postman è un popolare strumento per lo sviluppo e il testing delle API che semplifica il processo di invio di richieste, analisi delle risposte e gestione delle API. Fornisce un’interfaccia utente intuitiva per la creazione ed esecuzione delle chiamate API, rendendo più semplice per gli sviluppatori lavorare con i servizi web.
Comprendere i Servizi Web
I servizi web sono applicazioni o componenti che comunicano su reti informatiche utilizzando protocolli web standard. Questi servizi permettono a diversi sistemi software di interagire e scambiare dati in modo fluido, indipendentemente dalle tecnologie o dalle piattaforme sottostanti.
Caratteristiche Chiave dei Servizi Web
- Indipendenza dalla Piattaforma: I servizi web possono essere accessibili da qualsiasi dispositivo o sistema operativo con connettività Internet.
- Interoperabilità: Permettono a sistemi diversi di comunicare utilizzando protocolli e formati di dati standardizzati.
- Scalabilità: I servizi web possono gestire più client e crescere man mano che la domanda aumenta.
- Riutilizzabilità: Una volta creati, i servizi web possono essere utilizzati da più applicazioni, promuovendo il riutilizzo del codice e l’efficienza.
Che Cos’è RPC?
Remote Procedure Call (RPC) è un protocollo (JSON-RPC) che permette ad un programma di eseguire una procedura o funzione su un altro computer come se si trattasse di una chiamata di procedura locale. RPC è una delle prime forme di calcolo distribuito e ha svolto un ruolo significativo nello sviluppo dei servizi web.
Caratteristiche Chiave di RPC:
- Trasparenza della Posizione: Il programma chiamante non necessita di conoscere la posizione fisica della procedura chiamata.
- Comunicazione Sincrona: RPC segue tipicamente un modello di richiesta-risposta, in cui il chiamante attende la risposta prima di continuare.
- Orientamento alla Procedura: RPC si concentra sulla chiamata di procedure o funzioni specifiche sui sistemi remoti.

Comprendere le API
Un’Application Programming Interface (API) è un insieme di regole, protocolli e strumenti che permettono a diverse applicazioni software di comunicare tra loro. Le API definiscono i metodi e i formati di dati che le applicazioni possono utilizzare per richiedere e scambiare informazioni.
Tipi di API
- SOAP (Simple Object Access Protocol): Un protocollo che utilizza XML per lo scambio di dati strutturati.
- REST (Representational State Transfer): Uno stile architetturale che utilizza metodi HTTP standard per la comunicazione.
- GraphQL: Un linguaggio di query per le API che permette ai client di richiedere dati specifici di cui hanno bisogno.

Perché le API Sono Importanti
- Integrazione: Le API permettono a sistemi e applicazioni differenti di collaborare in modo fluido.
- Flessibilità: Consentono agli sviluppatori di accedere a funzionalità specifiche di altre applicazioni senza dover comprendere l’intero codice sorgente.
- Efficacia: Le API possono ridurre i tempi di sviluppo fornendo funzionalità già pronte all’uso.
- Scalabilità: API ben progettate possono gestire carichi crescenti e basi utenti in espansione.
Eseguire Chiamate API con Postman
Ora che abbiamo compreso i fondamenti dei servizi web e delle API, esploriamo come effettuare chiamate API utilizzando Postman. Vedremo due esempi per dimostrare i differenti tipi di chiamate API. JSONPlaceholder è un sito web per testing delle API. Esistono anche altri siti online.
Metodo GET: Una richiesta per recuperare dati specifici da un server senza modificare alcuna risorsa, tipicamente utilizzata per ottenere informazioni e sicura per chiamate ripetute.
Metodo POST: Una richiesta per inviare dati da processare e memorizzare dal server, spesso usata per creare nuove risorse o inviare dati di un modulo, che può modificare lo stato del server.

Esempio 1: Esecuzione di una Richiesta GET
Iniziamo con una semplice richiesta GET per recuperare dati da un’API pubblica.
- Aprire Postman e creare una nuova richiesta.
- Impostare il metodo HTTP su GET.
- Inserire il seguente URL: https://jsonplaceholder.typicode.com/posts/1
- Cliccare sul pulsante “Send”.
Dovrebbe essere ricevuta una risposta simile alla seguente:
{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}
Questo esempio dimostra quanto sia semplice recuperare dati da un’API utilizzando Postman. La risposta contiene un oggetto JSON con informazioni relative ad un post specifico.
Esempio 2: Esecuzione di una Richiesta POST
Adesso, creiamo una nuova risorsa utilizzando una richiesta POST.
1. Creare una nuova richiesta in Postman.
2. Impostare il metodo HTTP su POST.
3. Inserire l’URL: https://jsonplaceholder.typicode.com/posts
4. Accedere alla scheda “Body”, selezionare “raw” e scegliere “JSON” dal menu a tendina.
5. Inserire il seguente JSON nel corpo della richiesta:
{
"title": "My New Post",
"body": "This is the content of my new post.",
"userId": 1
}Cliccare sul pulsante “Send”.
Dovrebbe essere ricevuta una risposta simile alla seguente:
{
"title": "My New Post",
"body": "This is the content of my new post.",
"userId": 1,
"id": 101
}
Questo esempio mostra come creare una nuova risorsa utilizzando una richiesta POST. L’API risponde con l’oggetto creato, includendo un nuovo id assegnato dal server.
Se il server utilizza HTTPS e dispone di un certificato self-signed, potrebbe essere necessario disattivare la verifica del certificato SSL nelle impostazioni di Postman.
Funzionalità Avanzate di Postman per le Chiamate API
Postman offre diverse funzionalità avanzate che possono migliorare il flusso di lavoro per il testing e lo sviluppo delle API:
Variabili d’Ambiente
Postman permette di creare variabili d’ambiente per memorizzare e riutilizzare valori in più richieste. Ciò è particolarmente utile per gestire differenti endpoint API o token di autenticazione.
Per utilizzare le variabili d’ambiente:
- Creare un nuovo ambiente in Postman.
- Aggiungere variabili come base_url o api_key.
- Utilizzare queste variabili nelle richieste racchiuse tra doppie parentesi graffe, es. {{base_url}}/api/endpoint.
Script Pre-request
È possibile scrivere codice JavaScript che venga eseguito prima dell’invio di una richiesta. Questo è utile per generare dati dinamici o predisporre l’autenticazione.
Esempio di script pre-request per la generazione di un timestamp:
pm.environment.set(“timestamp”, new Date().getTime());

Test
Postman consente di scrivere test per le chiamate API utilizzando JavaScript. Questi test possono validare i dati della risposta, controllare i codici di stato o eseguire altre asserzioni.
Esempio di script di test nella sezione Tests per una nuova richiesta GET all’URL https://jsonplaceholder.typicode.com/posts/1?timestamp={{timestamp}}:
// Parse l'URL per estrarre il timestamp
var url = pm.request.url.toString();
var timestamp = url.split('timestamp=')[1];
// Log del timestamp
console.log("Timestamp usato:", timestamp);
// Aggiungi il timestamp alla risposta per visibilità
var responseJson = pm.response.json();
responseJson.timestamp = timestamp;
// Imposta la risposta modificata per visualizzarla in Postman
pm.visualizer.set(JSON.stringify(responseJson, null, 2));
// Test per assicurarsi che il timestamp sia stato inviato
pm.test("Richiesta inviata con timestamp", function () {
pm.expect(timestamp).to.not.be.undefined;
});
Controllare la scheda “Test Results” per verificare se il test è passato. Inoltre, controllare la scheda “Console” per vedere il timestamp registrato. Il corpo della risposta includerà ora il valore del timestamp.

Best Practices per Effettuare Chiamate API con Postman
- Organizzi le Sue Richieste: Utilizzi collezioni e cartelle per raggruppare le richieste correlate.
- Utilizzi il Version Control: Postman permette di esportare le collezioni. Salvi questi file in sistemi di controllo versione come Git.
- Documenti le Sue API: Usi la funzionalità di documentazione di Postman per creare una documentazione API chiara e interattiva.
- Automatizzi il Testing: Utilizzi il Collection Runner di Postman e Newman CLI per automatizzare i test delle API.
- Gestisca Correttamente l’Autenticazione: Utilizzi le variabili d’ambiente per memorizzare informazioni sensibili come API key o token.
- Monitori le Prestazioni delle API: Configuri monitor in Postman per tracciare le prestazioni e il tempo di attività delle API.
Conclusione
Padroneggiare le chiamate API con Postman è una competenza essenziale per gli sviluppatori e i tester moderni. Comprendendo i servizi web, le API e RPC, Lei potrà sfruttare le potenti funzionalità di Postman per semplificare i processi di sviluppo e di testing delle API.
Abbiamo coperto i fondamenti delle chiamate API, esplorato funzionalità avanzate di Postman e discusso le best practices. Con queste conoscenze, Lei è ben equipaggiato per affrontare interazioni API complesse e costruire applicazioni robuste e interconnesse.
Ricordi, la chiave per diventare esperto nelle chiamate API con Postman è la pratica. Sperimenti con i differenti tipi di richieste, esplori API pubbliche e si metta alla prova creando suite di test complete per le Sue API.
Man mano che continua il Suo percorso nello sviluppo e nel testing delle API, prenda in considerazione l’approfondimento di argomenti avanzati quali sicurezza delle API, ottimizzazione delle prestazioni e testing di integrazione. Il mondo dei servizi web è vasto e in continua evoluzione, offrendo infinite opportunità di apprendimento e crescita.