Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Risorse e relazioni nei servizi RESTFul

Le fasi iniziali del progetto di un Web Service: capire quali sono le azioni da esporre
Le fasi iniziali del progetto di un Web Service: capire quali sono le azioni da esporre
Link copiato negli appunti

Dopo aver visto come consumare un Web Service in modalità REST, vediamo come è
possibile realizzarne uno. In questa sezione affronteremo infatti le problematiche di progettazione di un Web Service che risponda ai principi REST e vedremo una semplice implementazione.

Il Web Service che andremo a realizzare riguarda un classico negozio online a cui un client può
sottoporre un ordine, interrogare o modificarne lo stato, richiedere fattura, ecc.

Naturalmente semplificheremo l'intero processo per concentrarci sugli aspetti rilevanti per gli obiettivi di questa guida.

Nella progettazione di un Web Service RESTful possiamo seguire alcune linee guida che ci
permettono di ragionare su quello che vogliamo ottenere e come ottenerlo secondo i principi REST. Questi principi, infatti, devono
essere sempre presenti in ogni nostra decisione nella fase di progettazione.

Mostreremo le linee guida da seguire come una serie di passi durante i quali concentreremo la nostra attenzione su alcuni aspetti
da definire per giungere al progetto finale pronto per l'implementazione.

Individuare le risorse

Il primo passo da fare consiste nell'individuare le risorse da esporre tramite il Web service. È importante evidenziare che in questa fase dobbiamo pensare a come le risorse vengono viste da un ipotetico client e non a come vengono implementate internamente. Occorre infatti separare l'interfaccia verso l'esterno dai dettagli implementativi.

Ad esempio, se creiamo un Web Service che si interfaccia ad una applicazione esistente, non tutte le proprietà di un oggetto del dominio dell'applicazione vanno rese disponibili. Il Web Service deve consentire l'accesso alle sole caratteristiche rilevanti ai fini dell'esecuzione delle richieste remote.

Inoltre, non tutte le risorse del dominio dell'applicazione sono da rendere accessibili all'esterno. Ancora una volta dobbiamo limitarci a quelle risorse che sono rilevanti per il servizio da realizzare.

In sostanza, le risorse da esporre tramite un Web Service non sono una semplice mappatura del modello ad oggetti interno all'applicazione. Gli oggetti vanno reinterpretati alla luce degli scopi del Web Service da sviluppare.

Ad esempio, nel progetto che andremo idealmente a realizzare vogliamo consentire agli utenti di un ipotetico negozio online di selezionare articoli, di fare ordini e di ottenere le relative fatture. Anche se l'applicazione sottostante gestisce clienti, fornitori ed altri oggetti, non metteremo questi oggetti tra le risorse da esporre tramite Web Service. Inoltre, sulle risorse che metteremo a disposizione limiteremo sia le caratteristiche accessibili sia le operazioni ammissibili.

Definire le relazioni tra le risorse

Nel secondo passo occorre analizzare le relazioni tra le risorse, come ciascuna risorsa si collega alle altre, eventualmente in base al proprio stato, e come il client può richiedere le risorse collegate.

Questa fase del processo di analisi e progettazione di un Web Service REST consente di definire come verrà gestito lo stato dell'applicazione e verrà approfondito nella sezione successiva.

Ti consigliamo anche