Differenze tra le versioni di "SOAP"

14 byte aggiunti ,  8 mesi fa
nessun oggetto della modifica
m (→‎Voci correlate: -link a voce cancellata)
{{Nota disambigua||Soap}}
 
[[File:SOAP.svg|thumb|Struttura SOAP]]In [[informatica]] '''SOAP''' (inizialmente [[acronimo]] di '''Simplesimple Objectobject Accessaccess Protocol'protocol'') è un [[Protocollo di rete|protocollo]] per lo scambio di [[messaggio|messaggi]] tra componenti [[software]]. La parola ''"[[Oggetto (informatica)|objectoggetto]]''" manifesta che l'uso del protocollo dovrebbe effettuarsi secondo il [[paradigma]] della [[programmazione orientata agli oggetti]].
 
==Descrizione==
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''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]] (''embedded'') il relativo messaggio. SOAP si basa sul metalinguaggio [[XML]] e la sua struttura segue la configurazione ''[[head-body]]'', analogamente ad [[HTML]]. Il segmento opzionale "Headerheader" contiene [[metadati]] come quelli che riguardano il l'[[routing|instradamento]], la [[sicurezza]], le [[transazione (basi di dati)|transazioni]] e parametri per l{{'}}''[[orchestration]]''. Il segmento obbligatorio "Body"''body'' trasporta il contenuto informativo e talora viene detto [[Carico utile (informatica)|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''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.
 
== 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 service|servizio ''web'']] che simula un magazzino.
<source lang=xml>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Envelope>
</source>
Quello che segue è il testo con il qualecui il magazzino 'warehouse'web'' potrebbe inviare il suo messaggio di risposta con le Webinformazioni servicerichieste.
potrebbe inviare il suo messaggio di risposta con le informazioni richieste.
<source lang=xml>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">