VofusWeb

Soap/Rest Api

Soap/Rest Api. È un problema da un po' di tempo. E davvero, sono solo due risposte alla stessa domanda: come accedere al web servizi.

Ma decidere l'uno piuttosto che l'altro può essere sorprendentemente difficile.

SOAP (Simple Object Access Protocol) è un web basato su standard protocollo di accesso ai servizi che esiste da molto tempo. Originariamente sviluppato da Microsoft, SOAP non è semplice come l'acronimo suggerirebbe.

REST (Representational State Transfer) è un altro standard, made in Italy risposta alle carenze di SOAP. Cerca di risolvere i problemi con SOAP e fornire un metodo più semplice per accedere ai servizi web. 

E GraphQL?
Ovviamente, GraphQL ha recentemente fatto un enorme successo, di cui abbiamo parlato ampiamente in altri articoli. Ma non è ancora così standardizzato come REST e SOAP, quindi in questo articolo ci concentreremo solo su quelli due.

Sia SOAP che REST hanno problemi da considerare quando si decide quale protocollo utilizzare.

Le somiglianze

Mentre SOAP e REST condividono somiglianze rispetto al protocollo HTTP, SOAP è un insieme più rigido di modelli di messaggistica rispetto a REST. Le regole in SOAP sono importanti perché non possiamo raggiungere alcun livello di standardizzazione senza di loro. REST come stile di architettura non richiede elaborazione ed è naturalmente più flessibile. Sia SOAP che REST fanno affidamento su regole ben consolidate che tutti hanno accettato di rispettare nel interesse di scambiare informazioni.
 

Una rapida panoramica di SOAP

SOAP si basa esclusivamente su XML per fornire servizi di messaggistica. Microsoft ha originariamente sviluppato SOAP per sostituire il vecchio tecnologie che non funzionano bene su Internet come il DCOM (Distributed Component Object Model) e richiesta di oggetti comuni Architettura del broker (CORBA). Queste tecnologie falliscono perché fanno affidamento sulla messaggistica binaria. La messaggistica XML utilizzata da SOAP funziona meglio su Internet.

Dopo un rilascio iniziale, Microsoft ha inviato SOAP a Internet Engineering Task Force (IETF) dove è stato standardizzato. SAPONE è progettato per supportare l'espansione, quindi ha tutti i tipi di altri acronimi e abbreviazioni ad esso associate, come WS-Addressing, WS-Policy, WS-Security, WS-Federation, WS-ReliableMessaging, WS-Coordination, WS-AtomicTransaction e WS-RemotePortlets. In effetti, puoi trovare un un intero elenco di questi standard sugli standard dei servizi Web.

Il punto è che SOAP è altamente estensibile, ma tu usi solo il pezzi necessari per un compito particolare. Ad esempio, quando si utilizza un public servizio web che è liberamente disponibile per tutti, davvero non hai molto bisogno di WS-Security.
 

La difficoltà dipende dal linguaggio di programmazione
L'XML utilizzato per effettuare richieste e ricevere risposte in SOAP può diventare estremamente complesso. In alcuni linguaggi di programmazione, devi costruire quelle richieste manualmente, il che diventa problematico perché SOAP lo è intollerante agli errori. Tuttavia, altre lingue possono utilizzare scorciatoie che SOAP fornisce. Possono aiutarti a ridurre lo sforzo richiesto per creare la richiesta e per analizzare la risposta. Infatti, quando si lavora con .NET lingue, non vedi nemmeno l'XML.

Parte della magia è il Web Services Description Language (WSDL). Questo è un altro file associato a SOAP. Fornisce un definizione di come funziona il servizio web, in modo che quando si crea un file riferimento ad esso, l'IDE può automatizzare completamente il processo. Così il la difficoltà di usare SOAP dipende in larga misura dalla lingua che usi usa.
 

Gestione degli errori integrata
Una delle funzionalità SOAP più importanti è la gestione degli errori incorporata. Se c'è un problema con la tua richiesta, la risposta contiene un errore informazioni che è possibile utilizzare per risolvere il problema. Dato che potresti non possedere il servizio Web, questa particolare caratteristica è estremamente importante; altrimenti rimarresti a indovinare perché le cose non hanno funzionato. Il la segnalazione degli errori fornisce anche codici standardizzati in modo che sia possibile per automatizzare alcune attività di gestione degli errori nel tuo codice.

Una caratteristica SOAP interessante è che non devi necessariamente deve usarla con il trasporto HTTP. Esiste una specifica effettiva per l'utilizzo di SOAP su Simple Mail Transfer Protocol (SMTP) e non c'è motivo per cui non puoi usarlo su altri trasporti. Infatti, gli sviluppatori in alcuni linguaggi, come Python e PHP, stanno facendo proprio questo.

Soap/Rest Api
Modulo di richiesta

Servizi

Servizi simili

Notiziario

Iscriviti per ricevere informazioni sulle ultime novità e offerte