Cos'è un'API REST?
API sta per "application program interface". È solo un metodo documentato per interagire con il servizio di qualcun altro. Per esempio, Google ha un'API per Gmail. E un'API per Calendar. E API per quasi tutte le altre cose che fanno. Sono piuttosto bravi, in realtà.
Se si vuole interagire con un altro servizio, generalmente si usa un'API. Di sicuro è meglio che chiamare Jawbone al telefono e dire "oh hey, puoi mandarmi via email i miei dati di attività dell'ultimo mese? Grazie".
REST è solo un modello per creare API. Vi direi per cosa sta, ma non ha importanza. È solo uno schema standard per nominare le risorse che un servizio fornisce.
Nell'esempio dell'API di Gmail, potete interagire con le vostre bozze di e-mail. Per fare questo, Google segue il modello REST dandovi un url che assomiglia all'url qui sotto. (Nota a margine, quasi tutte le API REST usano HTTP. They don't have to, but all of the ones that matter do.)
- https://www.googleapis.com/gmail/v1/users/userId/drafts
Want to list your drafts? Invia una richiesta GET a questo url.
Vuoi creare una bozza? Invia una richiesta POST a questo url.
Vuoi leggere una specifica bozza? Send a GET request to the url:
- https://www.googleapis.com/gmail/v1/users/userId/drafts/draftId
Want to update your draft? Invia una richiesta POST all'url di cui sopra.
Vuoi cancellare la tua bozza? Invia una richiesta DELETE all'url qui sopra.
E se tu volessi fare tutte le stesse azioni (elencare, creare, leggere, aggiornare, cancellare) ad una risorsa diversa, diciamo Gmail Labels?
Bene, poiché stanno usando il modello REST per la loro API, puoi facilmente vedere il modello per elencare, creare, leggere, aggiornare e cancellare Labels. It's just at a different URL:
- https://www.googleapis.com/gmail/v1/users/userId/labels
So what's a REST API? It's a standard pattern for an interface for another service that you can use programmatically (from a computer program).
Articoli simili
- Qual era lo scopo di creare l'API REST?
- Quali elementi compongono un server backend quando si parla di un server backend che servirà un'API costruita sullo standard REST?
- Se qualcuno è allergico alle api, deve stare lontano da miele, cera d'api e polline d'api?
- Qual è qualche chatbot online con API RESTful completamente gratuito (qualcosa come https://www.cleverbot.com/api)?