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

Web service e Web API

L' approccio di Microsoft ai servizi RESTful
L' approccio di Microsoft ai servizi RESTful
Link copiato negli appunti

L'utilizzo del Web come piattaforma di programmazione è un'idea che si è diffusa intorno al 2000 con l'introduzione dei Web service, cioè di un meccanismo per l'interoperabilità tra applicazioni basato sulle tecnologie e gli standard definiti per il Web.

I Web service consentono di far interagire due applicazioni indipendentemente dal sistema operativo su cui girano e dal linguaggio di programmazione utilizzato. Tecnicamente il meccanismo di interazione è basato sul protocollo SOAP, su un insieme di regole che definiscono la struttura dei messaggi scambiati dalle applicazioni e tutta una serie di accorgimenti per garantire sicurezza, affidabilità, corretta gestione degli eventi, ecc. L'approccio è sostanzialmente basato su una definizione di funzione richiamabile via Web.

Un approccio alternativo ai Web service basati su SOAP, che è stato proposto negli stessi anni ma è stato riscoperto soltanto negli ultimi tempi, è l'approccio noto come REST (Representational State Transfer) e basato su una serie di principi che un'applicazione deve rispettare. In sintesi, nella visione RESTful un Web service non definisce una funzione richiamabile da remoto ma mette a disposizone delle risorse su cui è possibile effettuare le classiche operazioni CRUD sfruttando i metodi del protocollo HTTP.

Due visioni diverse del Web come piattaforma di elaborazione che sempre più spesso vengono distinte parlando semplicemente di Web service quando si fa riferimento a quelli basati si SOAP e di Web API quando ci ispira al modello REST.

Per approfondimenti sulle diverse filosofie di implementazione dei Web service e per un confronto tra i due approcci si possono consultare:

Questa guida vuole essere un tutorial pratico sull'implementazione di Web service di tipo RESTful utilizzando il framework Web API introdotto da Microsoft con MVC 4. Dopo aver introdotto il framework e gli strumenti necessari per il suo utilizzo, esploreremo le funzionalità messe a disposizione e le sfrutteremo per realizzare una semplice Web API.

L'approccio REST di Microsoft

Prima dell'introduzione delle ASP.NET Web API, Microsoft non aveva un supporto ufficiale ai Web service in modalità REST. Chi desiderava adottarlo aveva a disposizione due strade: sfruttare WCF, il sottosistema di .NET dedicato alla costruzione di applicazioni service-oriented, o adottare una libreria esterna, come ad esempio OpenRasta o Service Stack.

Sfruttare WCF per realizzare Web service secondo l'approccio RESTful non è cosa immediata. Per questo motivo Microsoft ha in un primo tempo introdotto WCF REST Starter Kit e successivamente WCF Web API. Entrambi i pacchetti avevano l'obiettivo di semplificare la realizzazione di Web service basati su WCF, ma nessuno dei due ha visto il raggiungimento di una versione stabile.

Con ASP.NET Web API, Microsoft ha deciso di cambiare approccio nella realizzazione di Web service RESTful basandoli sul meccanismo di routing di MVC invece di cercare di semplificare la complessità intrinseca del sottosistema WCF.

ASP.NET Web API è parte integrante di ASP.NET MVC 4. È pertanto necessario scaricare ed installare questa versione del pacchetto ASP.NET MVC ed utilizzare Visual Studio o Visual Web Developer dalla versione 2010 SP1 in su. È previsto anche un pacchetto NuGet che non necessita dell'installazione dell'intero framework MVC, ma in questo caso occorre eseguire alcune impostazioni manualmente e rinunciare a certe comodità offerte dall'ambiente di sviluppo.

Nel seguito della guida faremo riferimento ad una installazione completa di ASP.NET MVC 4 e Visual Web Developer 2010 SP1

Ti consigliamo anche