Wiki > Architettura software > REST

REST

REST è anche conosciuto con il nome di Representational State Transfer

Condividi su

REST

Cos'è REST

REST sta per REpresentational State Transfer, traducibile con 'trasferimento di stato rappresentativo'. Si tratta di un pattern di architettura per le interazioni tra i componenti di un'applicazione distribuita in rete. Tale pattern è stato sviluppato e standardizzato dal W3C insieme a HTTP 1.1 nel 1999. I sistemi conformi ai principi REST sono chiamati RESTful.

I principali vincoli REST sono:

  • client / server: le applicazioni REST sono separate in due componenti principali, un server (che gestisce i dati e lo stato dell'applicazione) che comunica con un client (il quale gestisce le interazioni dell'utente). Questa netta separazione consente di lavorare su una delle due parti in modo completamente indipendente dall'altra.
  • stateless: i client gestiscono il proprio stato senza che i server mantengano alcuno stato del client. Le richieste dei client ai server devono contenere tutte le informazioni necessarie per elaborarle.
  • memorizzabile nella cache: le risposte dei server sono definite come memorizzabili o non memorizzabili nella cache. In questo modo, le risposte memorizzabili consentono di migliorare le prestazioni, mentre quelle non memorizzabili permettono ai client di utilizzare dati sempre aggiornati quando rispondono ad ulteriori richieste.
  • sistema a livelli: poiché gli elementi del sistema REST sono disposti su vari livelli, è possibile inserire layer intermedi tra i diversi livelli, come proxy e bilanciatori di carico.
  • interfaccia uniforme: un'interfaccia di comunicazione uniforme tra i componenti permette di semplificare l'architettura. Questo vincolo a sua volta si divide in quattro principi: identificazione delle risorse, manipolazione delle risorse attraverso le sue rappresentazioni, messaggi autodescrittivi, e ipermedia come motore dello stato dell'applicazione (quest'ultimo definito HATEOAS, dall'inglese 'Hypermedia as the engine of application state').

PostmanSOAPSlimRESTful APIBackbone.js

Geekandwiki
la scrivi
anche tu

Condividi le tue competenze

Registrati per scrivere o modificare le wiki.

La GeekandWiki nasce come strumento di condivisione della conoscenza all'interno di GeekandJob. Abbiamo deciso di trasformarlo in un progetto aperto e collaborativo, perché crediamo che il modo migliore di valorizzare le competenze sia condividerle.

Unisciti ad altri professionisti del settore tech e digital, e dai il tuo contributo alla GeekandWiki.

Registrati