SOAP: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Bot: Fix portali in ordine alfabetico
Recupero di 1 fonte/i e segnalazione di 0 link interrotto/i.) #IABot (v2.0.9.5
 
(31 versioni intermedie di 19 utenti non mostrate)
Riga 1:
{{Nota disambigua|altri significati|[[Soap]]}}
[[File:SOAP.svg|thumb|Struttura SOAP]]
In [[informatica]] '''SOAP''' (inizialmente [[acronimo]] di ''simple object access protocol'') è un [[Protocollo di rete|protocollo]] per lo scambio di [[messaggio|messaggi]] tra componenti [[software]].
 
== Descrizione ==
[[File:SOAP.svg|thumb|Struttura SOAP]]In [[informatica]] '''SOAP''' (inizialmente [[acronimo]] di '''Simple Object Access Protocol''') è un [[Protocollo di rete|protocollo]] leggero per lo scambio di [[messaggio|messaggi]] tra componenti [[software]], tipicamente nella forma di componentistica software. La parola ''[[Oggetto (informatica)|object]]'' manifesta che l'uso del protocollo dovrebbe effettuarsi secondo il [[paradigma]] della [[programmazione orientata agli oggetti]].
SOAP è la struttura operativa (''[[framework]]'') estensibile e decentralizzata che può operare sopra varie pile protocollari per [[rete di computer|reti di computer]] fornendo tramite messaggi [[richiamo di procedura remota|richieste di procedure remote]]. I richiami di procedure remote possono essere infatti modellati come interazione di parecchi messaggi SOAP. Esso, dunque, è uno dei protocolli che abilitano i [[Web service|servizi ''web'']].
 
SOAP può operare su differenti [[Protocollo di rete|protocolli di rete]], ma [[Hypertext Transfer Protocol|HTTP]] è il più comunemente utilizzato e l'unico ad essere stato standardizzato dal [[W3C]], su cui è [[imbustamento|incapsulato]] il relativo messaggio. SOAP si basa sul metalinguaggio [[XML]] e la sua struttura segue la configurazione ''[[head-body]]'', analogamente ad [[HTML]]. Il segmento opzionale ''header'' contiene [[metadati]] come quelli che riguardano l'[[routing|instradamento]], la [[sicurezza]], le [[transazione (basi di dati)|transazioni]] e parametri per l'[[Orchestrazione (informatica)|orchestrazione]]. Il segmento obbligatorio ''body'' trasporta il contenuto informativo e talora viene detto [[Carico utile (informatica)|carico utile]] (''payload''). Questo deve seguire uno schema definito dal linguaggio [[XML Schema]]. SOAP può essere utilizzato in due modi diversi per una chiamata:
==Descrizione==
* Richiesta via SOAP di parametri: il ''client'' controlla nel Service''service Registryregistry'' l'oggetto d'interesse e sviluppa il messaggio secondo i parametri contenutiivi nel Service Registrycontenuti.
 
* ''General Purposepurpose Messagingmessaging'': un programmatore può sviluppare un suo protocollo privato, il ''client'' conosce a priori i parametri e non necessita di consultare il ''service registry''. All'interno del bodycorpo del messaggio inserisco i dati scritti nel formato concordato con lo sviluppatore.
SOAP è la struttura operativa (''[[framework]]'') estensibile e decentralizzata che può operare sopra varie pile protocollari per [[rete di computer|reti di computer]] fornendo tramite messaggi [[richiamo di procedura remota|richieste di procedure remote]].
I richiami di procedure remote possono essere infatti modellati come interazione di parecchi messaggi SOAP. SOAP dunque è uno dei protocolli che abilitano i [[Web Service|servizi Web]].
 
SOAP può operare su differenti [[Protocollo di rete|protocolli di rete]], ma [[Hyper Text Transfer Protocol|HTTP]] è il più comunemente utilizzato e l'unico ad essere stato standardizzato dal [[W3C]], su cui è [[imbustamento|incapsulato]] il relativo messaggio.
SOAP si basa sul metalinguaggio [[XML]] e la sua struttura segue la configurazione [[Head-Body]], analogamente ad [[HTML]].
Il segmento opzionale '''Header''' contiene [[meta-informazione|meta-informazioni]] come quelle che riguardano il [[routing]], la [[sicurezza]], le [[transazione (basi di dati)|transazioni]] e parametri per l'[[Orchestration]]. Il segmento obbligatorio '''Body''' trasporta il contenuto informativo e talora viene detto carico utile, o ''payload''. Questo deve seguire uno schema definito dal linguaggio [[XML Schema]].
Soap può essere utilizzato in due modi diversi per una chiamata:
* Richiesta via SOAP di parametri: il client controlla nel Service Registry l'oggetto d'interesse e sviluppa il messaggio secondo i parametri contenuti nel Service Registry.
* General Purpose Messaging: un programmatore può sviluppare un suo protocollo privato, il client conosce a priori i parametri e non necessita di consultare il service registry. All'interno del body del messaggio inserisco i dati scritti nel formato concordato con lo sviluppatore.
 
== Esempi di messaggi SOAP ==
Come primo esempio, mostriamo come un Client''client'' può formattare un messaggio SOAP per richiedere informazioni su un prodotto da un immaginario [[Web Serviceservice|servizio ''web'']] che simula un magazzino.
 
<syntaxhighlight lang="xml" line="1" copy=1>
Come primo esempio, mostriamo come un Client può formattare un messaggio SOAP per richiedere informazioni su un prodotto da un immaginario [[Web Service]] che simula un magazzino.
<source lang=xml>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
Riga 26 ⟶ 21:
</soap:Body>
</soap:Envelope>
</syntaxhighlight>
</source>
 
Quello che segue è il testo con il quale il 'warehouse' web service
Quello che segue è il testo con cui il magazzino ''web'' potrebbe inviare il suo messaggio di risposta con le informazioni richieste.
 
<source lang=xml>
<syntaxhighlight lang="xml" line="1" copy=1>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
Riga 43 ⟶ 39:
</soap:Body>
</soap:Envelope>
</syntaxhighlight>
</source>
 
== Voci correlate ==
* [[Web Serviceservice]]
* [[XML-RPC]]
* [[WSDL]]
* [[UDDI]]
* [[CORBA]]
* [[WS-I Basic Profile]]
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{en}} Animazione Flash: [http://media.techtarget.com/searchWebServices/downloads/what_is_soap.swf What is SOAP]
* {{FOLDOC|Simple Object Access Protocol|Simple Object Access Protocol}}
* {{en}} Introduzione: [http://www.w3.org/TR/soap12-part0/ W3C SOAP primer]
* {{en}} Animazione Flash: [httphttps://media.techtarget.com/searchWebServices/downloads/what_is_soap.swf What is SOAP]
* {{en}} [http://www.w3.org/2000/xp/ attività concernenti XML protocol e servizi Web]
* {{en}}Introduzione: [httphttps://xmlwww.coverpagesw3.org/soap.htmlTR/soap12-part0/ RapportoW3C sullaSOAP tecnologiaprimer]
* {{en}}cita [httpweb|https://www.w3.org/2000/xp/ |attività concernenti XML protocol e servizi Web]|lingua=en}}
* {{en}} [http://soap2corba.sourceforge.net/ ponte bidirezionale fra SOAP e CORBA]
* {{cita web|1=http://xml.coverpages.org/soap.html|2=Rapporto sulla tecnologia|lingua=en|accesso=17 ottobre 2004|dataarchivio=3 marzo 2001|urlarchivio=https://web.archive.org/web/20010303194003/http://xml.coverpages.org/soap.html|urlmorto=sì}}
* {{en}} [https://bugzilla.mozilla.org/show_bug.cgi?id=332174 Bugzilla Bug 332174 – Drop SOAP support] Mozilla elimina SOAP in Firefox Gran Paradiso Alpha 7.
* {{en}}cita [web|http://soap2corba.sourceforge.net/ |ponte bidirezionale fra SOAP e CORBA]|lingua=en}}
* {{en}} [https://bugzilla.mozilla.org/show_bug.cgi?id=332174 Bugzilla Bug 332174 – Drop SOAP support] Mozilla elimina SOAP in Firefox Gran Paradiso Alpha 7.
 
{{Controllo di autorità}}
{{Portale|internet|telematica}}
 
[[Categoria:Standard W3C]]
[[Categoria:StandardProtocolli basati su XML]]
[[Categoria:Protocolli livello applicazione]]