Webbtjänster (engelska: Web services) betecknar webbaserade datorprogram som kommunicerar och samarbetar dynamiskt med andra webbtjänster på samma vis som en människa kan surfa till olika webbsidor.
World Wide Web Consortium definierar en webbtjänst på följande vis:
En webbtjänst är ett datorprogram som identifieras med en URI och vars gränssnitt och bindningar kan definieras, beskrivas och upptäckas som XML-föremål. En webbtjänst stödjer direktinteraktion med andra programagenter med hjälp av XML-baserade meddelanden som utbyts via Internetbaserade protokoll.
- För att skicka data mellan applikationerna används protokollet HTTP.
- För att beskriva applikationernas gränssnitt används XML
- Typiska standarder för att bygga webbtjänster inkluderar SOAP, WSDL och UDDI.
- I de flesta fall handlar webbtjänster om system för EDI, utbyte av affärsinformation, till exempel prislistor eller beställningar av olika slag.
- Den dator som kör en webbtjänst brukar kallas applikationsserver, bland kända applikationsservrar finns till exempel:
- Oracle Application Server och Weblogic Application Server från Oracle
- Apache Geronimo från Apache Software Foundation
- Websphere Application Server från IBM
- JBoss och Jonas, J2EE-applikationsserverplattformar baserade på öppen källkod
- .NET Framework från Microsoft
- Novell Extend från Novell
- Apache Tomcat + Axis, som är ett SOAP/WSDL-tillägg från Apache
- Orion Application Server + Axis, som är ett SOAP/WSDL-tillägg från Apache
Webbtjänster kan samarbeta med varandra automatiskt och utan avbrott. Det är möjligt eftersom webbtjänster per definition är utvecklade i enlighet med samma standarder för självbeskrivning, publicering, lokalisering, anrop, kommunikation och datautbyte.
En mindre teknisk beskrivning av det dynamiska beteendet som webbtjänster uppvisar är att de kännetecknas av:
- att de är datorprogram
- att de officiellt och publikt beskriver sin funktionalitet
- att de kan lokalisera efterfrågad funktionalitet
- att de kan efterfråga och utbyta data med andra webbtjänster