Introduktion til RESTful-tjenester med WCF – Mobile Application Development, Web Services, SOA Architecture – Technology
Gå til indhold

Introduktion til RESTful Services med WCF – Mobile Application Development, Web Services, SOA Architecture

Annoncer

For det første følger RESTFUL-tjenester en arkitektonisk stil kendt som Representational State Transfer (REST). En arkitektonisk stil er et sæt af begrænsninger, der kan anvendes, når man bygger noget. Og en softwarearkitekturstil er noget, der beskriver de egenskaber, der kan bruges til at guide implementeringen af et softwaresystem. REST er en arkitektonisk stil, der kan bruges til at bygge software, hvor klienter (brugeragenter) kan fremsætte anmodninger om tjenester (endepunkter). REST er en måde at implementere en klient/server arkitektonisk stil på; faktisk er REST eksplicit baseret på klient/serverens arkitektoniske stil.

En mand ved navn Roy Thomas Fielding opfandt først udtrykket REST som et begreb i sin doktorafhandling ("Architecture Styles and the Design of Network-Based Software Architectures"). Han var en af dem, der arbejdede på den specifikation, der driver det meste af internettet i dag: Hypertext Transfer Protocol (HTTP) Normalt er baggrunden for folk, der beskriver en arkitektonisk stil, ikke relevant for en forklaring af stilen, men her TROR JEG det er vigtigt, fordi jeg TROR, at en af de bedste måder at få en grundlæggende forståelse af REST på er at tænke på nettet og hvordan det fungerer.

WCF og REST

WCF er Microsofts ramme til at skabe applikationer, der kommunikerer over et netværk, uanset protokol eller stil. Konceptet med WCF var at skabe en udvidelsesbar, pluggbar ramme til at lære information om en programmerings- og konfigurationsmodel, så udviklere kunne anvende denne viden til mange forskellige typer distribuerede systemer.

Selvom det er rigtigt, at meget af WCF er RPC-orienteret (ved hjælp af SOAP), har det faktisk haft en chance for at eksponere og forbruge REST-tjenester, siden det først blev udgivet som en del af .NET Framework 3.0. Med .NET Framework 3.5 System.ServiceModel.Web-samlingen blev der tilføjet en programmeringsmodel og også nogle stykker infrastruktur, der blev bygget til at arbejde med REST-stilen. Og .NET Framework 3.5 SP1 tilføjer nogle små forbedringer for at gøre REST nemmere at bruge..

Programmeringsmodellen kredser om to nye attributter, WebGetAttribute og WebInvokeAttribute, og en URI-skabelonmekanisme, der giver dig mulighed for at erklære den URI og verbum, som hver metode vil reagere på. Infrastruktur er inkluderet i form af en binding (WebHttpBinding) og adfærd (WebHttpBehavior), der giver den korrekte netværksstack til brug af REST. Derudover er der noget hjælp til hostinginfrastruktur fra en tilpasset ServiceHost (WebServiceHost) og en ServiceHostFactory (WebServiceHostFactory).