Web Service: cosa sono?

Un Web Service è

un sistema software progettato per supportare l’interoperabilità tra diversi elaboratori su una medesima rete oppure in un contesto distribuito. (Consorzio OASIS e W3C)

Questa definizione è molto interessante per un sistema distribuito, dove un ws è quindi un protocollo di alto livello per la comunicazione tra i nodi.

Il tentativo di standardizzazione ha portato alla definizione di SOAP nei primi anni 2000.

Vantaggi e svantaggi

vantaggi

Alcuni dei vantaggi che è possibile ottenere con l’utilizzo dei Web service sono i seguenti:

  • consentono l’interoperabilità tra sistemi eterogenei
  • Utilizzo di standard open sia a livello di protocollo di trasporto (HTTP) che di formato dei dati.
  • usare HTTP ha un vantaggio relativamente alle reti perchè non è necessario modificare le configurazioni dei firewall.
  • posso integrare web service tra di loro per formare nuovi web service.
  • possono essere adottati in modo progressivo all’interno di un sistema informatico esistente

I web Service SOAP

SOAP, protocollo di comunicazione XML-based che usa HTTP come protocollo di trasporto.

La struttura del pacchetto SOAP è quella di un frammento di XML contenuto all’interno di una richiesta GET fatta al server. All’interno della “busta” ci saranno tutte le informazioni necessarie a svolgere quanto desiderato (e definito in un documento XML esterno(WSDL che definisce la struttura delle singole richieste).

Struttura di un pacchetto SOAP

Uno schema generale di un pacchetto è il seguente:

struttura pacchetto SOAP

Ecco un esempio di body di una richiesta SOAP:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <getProductDetails xmlns="http://magazzino.example.com/ws">
      <productId>827635</productId>
    </getProductDetails>
  </soap:Body>
</soap:Envelope>

Possibili domande per l’orale

Esercizi

Next