TVÅL

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 18 maj 2022; verifiering kräver 1 redigering .

SOAP (från engelska.  Simple Object Access Protocol  - ett enkelt protokoll för att komma åt objekt) är ett protokoll för att utbyta strukturerade meddelanden i en distribuerad datormiljö . Ursprungligen var SOAP främst avsedd för implementeringar av fjärrproceduranrop ( RPC ). Nu används protokollet för att utbyta godtyckliga meddelanden i XML-format , och inte bara för att anropa procedurer. Den officiella specifikationen för den senaste versionen 1.2 av protokollet dechiffrerar inte namnet SOAP [1] på något sätt .

SOAP är en förlängning av XML-RPC-protokollet .

SOAP kan användas med alla applikationslagerprotokoll: SMTP , FTP , HTTP , HTTPS , etc. Men dess interaktion med vart och ett av dessa protokoll har sina egna egenskaper, som måste definieras separat. Oftast används SOAP över HTTP.

SOAP är en av de standarder som webbtjänsttekniker bygger på .

Protokollstruktur

SOAP-meddelandet ser ut så här:

Exempel

Ett exempel på en SOAP-förfrågan till en onlinebutiksserver:

<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd= "http:/ /www.w3.org/2001/XMLSchema" xmlns:soap= "http://schemas.xmlsoap.org/soap/envelope/" > <soap:Body> <getProductDetails xmlns= "http://warehouse.example. com/ws" > <productID> 12345 </productID> </getProductDetails> </soap:Body> </soap:Envelope>

Svarsexempel:

<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd= "http:/ /www.w3.org/2001/XMLSchema" xmlns:soap= "http://schemas.xmlsoap.org/soap/envelope/" > <soap:Body> <getProductDetailsResponse xmlns= "http://warehouse.example. com/ws" > <getProductDetailsResult> <productID> 12345 </productID> <productName> Facetterat glas </productName> <description> Facetterat glas. 250 ml. </description> <price> 9,95 </price> <currency> <code> 840 </code> <alpha3> USD </alpha3> <sign> $ </sign> <name> US-dollar </name> <precision > 2 </accuracy> </currency> <inStock> true </inStock> </getProductDetailsResult> </getProductDetailsResponse> </soap:Body> </soap:Envelope>

Nackdelar

  • Att använda SOAP för att överföra meddelanden ökar deras volym och minskar bearbetningshastigheten. I system där hastigheten är viktig är det vanligare att skicka XML-dokument över HTTP direkt, där förfrågningsparametrar skickas som vanliga HTTP-parametrar.

Se även

Anteckningar

  1. Senaste SOAP-versioner . Hämtad 19 juni 2005. Arkiverad från originalet 15 april 2021.

Länkar