Condividi tramite


Formati wire del servizio Web XML

Questo argomento è specifico di una tecnologia legacy. Servizi Web XML e client di servizi Web XML devono essere creati attualmente tramite Windows Communication Foundation.

I protocolli binari, come ad esempio DCOM, sono costituiti da un livello di richiesta di metodo che viene eseguito su un protocollo di comunicazione di proprietà riservata. Tali protocolli non contribuiscono alla creazione di servizi Web XML universalmente disponibili. Ciò non impedisce di utilizzare tali protocolli per un servizio Web XML, ma l'inconveniente dell'utilizzo in tali protocolli dipende dall'architettura specifica dei sistemi sottostanti e pertanto limita lo spettro di client potenziali.

In alternativa, è possibile costruire servizi Web XML per lavorare con uno o più protocolli aperti, ad esempio una combinazione di HTTP e SOAP. L'infrastruttura richiesta per supportare protocolli diversi varia.

I servizi Web XML non si limitano a fornire accesso alla chiamata a procedura remota (RPC). Possono essere creati anche per scambiare informazioni strutturate, ad esempio ordini di acquisto e fatture, e possono essere utilizzati per automatizzare e connettere processi aziendali interni ed esterni.

HTTP-GET e HTTP-POST

HTTP GET e HTTP-POST sono protocolli standard che utilizzano procedure Hypertext Transfer Protocol (HTTP) per la codifica e il passaggio di parametri quali coppie nome/valore, insieme alla semantica della richiesta associata. Ognuno è costituito da una serie di intestazioni di richieste HTTP che fra le altre cose definiscono quello che il client sta richiedendo al server, il quale risponde con una serie di intestazioni di risposta HTTP e con i dati richiesti, se l'operazione riesce.

HTTP-GET passa i parametri nel form di testo con codifica URL utilizzando il tipo MIME application/x-www-form-urlencoded, aggiunto all'URL del server che gestisce la richiesta. Urlencoding è un form di codifica dei caratteri che assicura che i parametri passati sono costituiti da testo adeguato, ad esempio la codifica di uno spazio quale %20. I parametri aggiunti sono definiti anche stringa di query.

Anche i parametri simili a HTTP GET, HTTP-POST sono urlencoded. Tuttavia, invece di venire passate come parte di un'URL, le coppie nome/valore vengono passate all'interno del messaggio di richiesta HTTP effettivo.

SOAP

SOAP è un protocollo semplice e leggero basato su XML per lo scambio di informazioni strutturate e di informazioni relative ai tipi sul Web. L'obiettivo generale della progettazione SOAP è di mantenere il protocollo quanto più semplice possibile e di fornire un minimo di funzionalità. Il protocollo definisce un framework di messaggistica che non contiene applicazioni o trasporto di semantica. Di conseguenza, il protocollo è modulare e molto estensibile.

Viaggiando su protocolli di trasporto standard, il protocollo SOAP è in grado di utilizzare l'architettura aperta esistente di Internet e di essere accettato facilmente da qualsiasi sistema arbitrario capace di supportare gli standard di base di Internet. L'infrastruttura richiesta per supportare un servizio Web XML conforme al protocollo SOAP può essere considerata semplicistica, ma potente, poiché aggiunge relativamente poco all'infrastruttura Internet esistente, ma facilita l'accesso universale ai servizi creati con SOAP.

La specifica del protocollo SOAP è costituita da quattro parti principali. La prima parte definisce un'envelope estensibile obbligatoria per incapsulare dati. La SOAP envelope definisce un messaggio SOAP ed è l'unità di scambio di base tra i processori del messaggio SOAP. Si tratta dell'unica parte obbligatoria della specifica.

La seconda parte della specifica del protocollo SOAP definisce le regole di codifica dei dati facoltative per la rappresentazione di tipi di dati definiti dall'applicazione e di grafici diretti e un modello uniforme per serializzare modelli di dati non sintattici.

La terza parte definisce un modello per lo scambio di messaggi RPC (richiesta/risposta). Ogni messaggio SOAP è una trasmissione unidirezionale. Anche se le radici SOAP sono in RPC, il protocollo non si limita a un meccanismo di richiesta/risposta. I servizi Web XML spesso combinano messaggi SOAP per implementare tali modelli, ma SOAP non implica un modello dello scambio di messaggi e anche questa parte della specifica è facoltativa.

La quarta parte della specifica definisce un'associazione tra SOAP e HTTP. Anche questa parte è facoltativa. È possibile utilizzare il protocollo SOAP in combinazione con qualsiasi protocollo di trasporto o meccanismo che è in grado di trasportare la SOAP envelope, inclusi SMTP, FTP, o addirittura un disco floppy.

Per ulteriori informazioni sulla specifica SOAP, visitare il sito Web di W3C all'indirizzo http://www.w3.org/TR/soap (informazioni in lingua inglese).

Vedere anche

Concetti

Infrastruttura dei servizi Web XML