Introduksjon til RESTful-tjenester med WCF – Mobile Application Development, Web Services, SOA Architecture – Technology
Hopp til innholdet

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

Annonser

For det første følger RESTFUL-tjenester en arkitektonisk stil kjent som Representational State Transfer (REST). En arkitektonisk stil er et sett med begrensninger som kan brukes når du bygger noe. Og en programvarearkitekturstil er noe som beskriver egenskapene som kan brukes til å veilede implementeringen av et programvaresystem. REST er en arkitektonisk stil som kan brukes til å bygge programvare som klienter (brukeragenter) kan gjøre forespørsler om tjenester (endepunkter) på. REST er en måte å implementere en klient/server-arkitekturstil; Faktisk er REST eksplisitt basert på klient/serverens arkitektoniske stil.

En mann ved navn Roy Thomas Fielding skapte først begrepet REST som et konsept i sin doktorgradsavhandling ("Architecture Styles and the Design of Network-Based Software Architectures"). Han var en av de som jobbet med spesifikasjonen som driver mesteparten av Internett i dag: Hypertext Transfer Protocol (HTTP) Normalt sett er ikke bakgrunnen for folk som beskriver en arkitektonisk stil relevant for en forklaring av stilen, men her TROR JEG det er viktig fordi jeg TROR at en av de beste måtene å få en grunnleggende forståelse av REST er å tenke på nettet og hvordan det fungerer.

WCF og REST

WCF er Microsofts rammeverk for å bygge applikasjoner som kommuniserer over et nettverk, uavhengig av protokoll eller stil. WCF-konseptet var å lage et utvidbart, pluggbart rammeverk for å lære informasjon om en programmerings- og konfigurasjonsmodell, slik at utviklere kunne bruke den kunnskapen til mange forskjellige typer distribuerte systemer.

Selv om det er sant at mye av WCF er RPC-orientert (ved hjelp av SOAP), har det virkelig hatt en sjanse til å eksponere og konsumere REST-tjenester siden det først ble utgitt som en del av .NET Framework 3.0. Med .NET Framework 3.5-monteringen ble System.ServiceModel.Web lagt til en programmeringsmodell samt noen deler av infrastrukturen som ble bygget for å fungere med REST-stilen. Og .NET Framework 3.5 SP1 legger til noen små forbedringer for å gjøre REST enklere å bruke..

Programmeringsmodellen dreier seg om to nye attributter, WebGetAttribute og WebInvokeAttribute, og en URI-malmotor som lar deg deklarere URIen og verbet som hver metode vil svare på. Infrastrukturen er inkludert i form av en binding (WebHttpBinding) og en atferd (WebHttpBehavior) som gir riktig nettverksstabel for bruk av REST. I tillegg er det litt vertsinfrastrukturhjelp fra en tilpasset ServiceHost (WebServiceHost) og en ServiceHostFactory (WebServiceHostFactory).