Web service

Wikipedia

Loikkaa: valikkoon, hakuun

Web service on W3C:n määritelmän mukaan ohjelmistojärjestelmä, joka mahdollistaa keskenään yhteensopivan tietokoneiden välisen vuorovaikutuksen tietoverkon yli. Käytännössä termillä tarkoitetaan World Wide Web -pohjaisia ohjelmointirajapintoja: jokin palvelin tarjoaa muille tietokoneille palvelun HTTPn tai muun Internet-pohjaisen protokollan yli. Termi sekoitetaan helposti verkkopalveluihin. Verkkopalveluilla tarkoitetaan ihmisille tarkoitettuja palveluita, kun taas web service -termillä viitataan verkossa olevan palvelun ohjelmointirajapintaan, joka tarjotaan tietoteknisten järjestelmien käytettäväksi.

Web service koostuu kolmesta osasta, joista kaksi on pakollisia. Palvelulla on tarjoaja (Service provider) ja käyttäjä (Service requester). Lisäksi on mahdollista käyttää palveluhakemistoa (Service broker). Kolmen osapuolen välillä kommunikoidaan erilaisten XML-pohjaisten protokollien avulla.

W3C:n Web services -protokollakenttään kuuluu kolme XML-pohjaista komponenttia:

SOAP (Simple Object Access Protocol)
SOAP on kieli ja protokolla, jonka avulla palvelun käyttäjä voi lähettää komennon palvelun tarjoajalle ja palvelun tarjoaja voi lähettää vastauksen.
WSDL (Web Service Description Language)
WSDL on kieli, jonka avulla SOAP-protokollalla tarjotun palvelun rajapinta, eli pyyntö- ja vastausmuoto, voidaan määritellä. WSDL-tiedostoja tarvitaan usein järjestelmän liittämiseen varsinaiseen ohjelmointirajapintaan; WSDL-tiedostosta voidaan generoida esimerkiksi lähdekoodia.
UDDI (Universal Description Discovery and Integration)
Standardoitu tapa julkaista ja etsiä eri palveluiden metadataa.

Pääasiallisena kommunikaatiokanavana ovat useimmiten HTTP tai HTTPS, mutta kommunikointi on myös mahdollista muita kanavia pitkin.

W3C määritteli XML-, SOAP- ja WSDL-standardit. UDDI on alun perin OASIS-standardi. Lisäksi W3C ja OASIS ovat standardoineet useita eri lisästandardeja liittyen mm. tietoturvaan ja luotettavuuteen.

W3C:n määrittelemien protokollien lisäksi on olemassa muitakin protokollia, kuten XML-RPC, jotka toimivat samalla periaatteella.

REST on arkkitehtuurimalli, joka on eräs tapa toteuttaa web service -toiminnallisuutta käyttämällä vain HTTP-protokollaa.


Tämä ohjelmointia käsittelevä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.
Henkilökohtaiset työkalut