Strumento di prova per API REST
Uno strumento che permette di inviare richieste HTTP a un'API REST direttamente dal browser e di esaminarne la risposta. In alternativa a Postman o a cURL, semplifica lo sviluppo e la verifica delle API.
Richiesta
Risposta
| Stato | {{ status }} |
|---|---|
| Intestazioni | {{ hkey }}: {{ hval }} |
Se l'API non restituisce l'intestazione «Access-Control-Allow-Origin» con il valore «*», non è possibile ottenere i dati. Con Google Chrome potete valutare l'uso di un'estensione dedicata.
https://chromewebstore.google.com/detail/cors-unblock/lfhmikememgdcahcdlaciloancbhjino
Che cos'è un tester di API REST?
Un tester di API REST vi permette di scegliere un metodo HTTP (GET, POST, PUT, DELETE e così via), inviare una richiesta a un endpoint dal browser e ispezionare all'istante codice di stato, intestazioni e corpo della risposta. Verificate così il comportamento di un'API senza installare un'applicazione desktop come Postman né ricorrere a cURL da riga di comando.
Si presta a controllare il comportamento mentre sviluppate un'API, oppure a sondare un'API pubblica per conoscere la forma delle sue risposte prima ancora di leggere la documentazione. Tenete però presente che, poiché le richieste partono direttamente dal browser, non riceverete alcuna risposta se l'API di destinazione non consente il CORS (l'intestazione Access-Control-Allow-Origin).
Come si usa il tester di API REST
- Selezionate il metodo HTTP Scegliete il metodo corrispondente all'operazione desiderata: GET, POST, PUT, PATCH, DELETE e così via.
- Inserite l'URL dell'endpoint Indicate l'URL dell'API interrogata. Fornite un URL completo che inizi con https.
- Impostate intestazioni e corpo se serve Inserite le intestazioni come un token di autenticazione o Content-Type, e il corpo JSON che inviate con POST o PUT.
- Inviate e ispezionate la risposta Codice di stato, intestazioni e corpo della risposta vengono mostrati subito lì.
Consigli per sfruttarlo al meglio
- Per le restrizioni sulla condivisione delle risorse fra origini diverse non si possono interrogare direttamente le API prive dell'intestazione
Access-Control-Allow-Origin: usate lo strumento con API pubbliche o già abilitate. - Indicando nell'intestazione della richiesta
Content-Type: application/jsonpotete inviare un corpo in formato JSON. - Codici di stato HTTP: 2xx successo, 4xx errore del client (401 per l'autenticazione, 404 per la risorsa non trovata), 5xx errore del server.
- Per le API che richiedono l'autenticazione con token, aggiungete l'intestazione
Authorization: Bearer {token}.
Quando un tester di API REST torna utile
Controllare un'API in sviluppo
Vedete immediatamente se l'API di back-end che state costruendo restituisce la risposta attesa, mentre la state ancora scrivendo.
Indagare la forma delle risposte di un'API pubblica
Prima di leggere la documentazione di un servizio esterno, inviate una richiesta reale e osservate la struttura JSON che torna.
Verificare le intestazioni di autenticazione
Provate se una richiesta che porta un token Bearer o una chiave API viene autenticata correttamente.
Vedere cosa contiene una risposta di errore
Inviate di proposito un parametro non valido e verificate quale messaggio di errore e quale codice di stato restituisce l'API.
Glossario
- REST
- Sigla di Representational State Transfer. Uno stile di progettazione per API web in cui le risorse si manipolano tramite metodi HTTP e URL.
- CORS
- Sigla di Cross-Origin Resource Sharing. Il meccanismo con cui i browser limitano le richieste verso un'origine (dominio) diversa: finché il server dell'API non restituisce l'intestazione che lo consente, la risposta non è leggibile.
- Endpoint
- L'URL presso il quale un'API accetta richieste. Per esempio « /api/users », che indica la risorsa su cui si opera.
- Metodo HTTP
- L'identificatore che dichiara il tipo di richiesta. Tra questi GET (leggere), POST (creare), PUT (aggiornare) e DELETE (rimuovere).
- Token Bearer
- Un formato di token molto usato per l'autenticazione delle API. Si allega all'intestazione della richiesta nella forma « Authorization: Bearer {token} ».
Domande frequenti
Access-Control-Allow-Origin si genera quell'errore. Potete usare un'estensione del browser che aggira la restrizione oppure provare con un'API che consente le richieste fra origini diverse.Content-Type: application/json, scrivete la stringa JSON nel campo del corpo e inviate.Authorization: Bearer {vostro_token}, sostituendo la parte fra parentesi con la stringa reale del token.
A proposito — la nascita di REST: la tesi di dottorato che cambiò lo sviluppo web
REST è lo stile architetturale proposto nel 2000 da Roy Fielding nella sua tesi di dottorato «Architectural Styles and the Design of Network-based Software Architectures». Fielding è anche uno dei principali coautori della specifica HTTP/1.1 e concepì REST proprio mentre sistemava i principi progettuali del protocollo.
Intorno al 2010 Twitter passò dall'approccio SOAP a un'API REST e, aprendola agli sviluppatori, ne favorì la diffusione esplosiva. Oggi moltissimi servizi noti — dai pagamenti allo sviluppo collaborativo, dalla messaggistica ai servizi di intelligenza artificiale — pubblicano API REST e alimentano quel mercato che si è preso a chiamare economia delle API.
Nella progettazione delle API REST rientra, nella formulazione originaria, il vincolo dell'ipermedia come motore dello stato dell'applicazione, ma sono pochissimi i servizi che lo attuano rigorosamente. La discussione su che cosa sia «vero REST» torna periodicamente ad accendersi nella comunità degli sviluppatori e la definizione stessa dell'aggettivo resta oggetto di dibattito.