Aan de slag met SOAP: uw webservices opschonen

Openbaarmaking: Uw steun helpt de site draaiende te houden! We verdienen een verwijzingsvergoeding voor sommige van de services die we op deze pagina aanbevelen.


SOAP is een zeer gestructureerd berichtenprotocol dat wordt gebruikt voor het bouwen van webservices. Hiermee kunnen softwaretoepassingssystemen via het web gestructureerde informatie met elkaar uitwisselen. Een klassiek voorbeeld hiervan is een webapplicatie die op basis van de inhoud van een webpagina productadvertenties maakt op basis van Amazon-gegevens.

ZEEP versus RUST

SOAP en REST (Representational State Transfer) zijn de twee belangrijkste methoden voor het afhandelen van webservices. Hoewel ze elkaar in theorie niet wederzijds uitsluiten, zijn ze in de praktijk concurrerende oplossingen – u kiest de een of de ander.

In het algemeen is SOAP een meer “heavy-duty” benadering, die doorgaans de voorkeur geniet in bedrijfs- en overheidssystemen. REST is een meer “lichtgewicht” benadering en wordt doorgaans geprefereerd in consumententoepassingen en in producten met snelle ontwikkelingscycli. Bovendien geven mensen die werken in grote ontwikkelomgevingen (Java en .NET) de voorkeur aan SOAP, terwijl ontwikkelaars die werken met meer flexibele scripttalen (Ruby, Python, PHP) de voorkeur geven aan REST.

Er komt natuurlijk meer bij kijken. Lees het verschil tussen SOAP en REST voor een meer diepgaande uitleg.

Tutorials

Voordat u iets probeert te bouwen, moet u eerst de basisprincipes van SOAP bekijken. Deze tutorials bieden een algemeen overzicht van SOAP zonder in te gaan op de details van specifieke technologieën.

  • SOAP-zelfstudie, een basisintroductie van Tutorials Point;
  • XML Soap, een zeer gemakkelijk te volgen uitleg van SOAP;
  • SOAP Basic, een inleiding tot SOAP-principes, van SOAPuser.com, een geweldige bron voor SOAP-informatie;
  • SOAP Web Service-zelfstudie, een zelfstudie voor Java-programmeurs, die SOAP en een aantal verwante onderwerpen behandelt;
  • Voorbeeld van SOAP-webservice in Java met Eclipse, een andere op Java gerichte tutorial;
  • SOAP – Simple Object Access Protocol, een zevendelige tutorial;

Zodra u een SOAP-weergave op hoog niveau hebt, kunt u enkele zelfstudies doorlopen. Deze zijn natuurlijk taal- en platformspecifiek, dus u wilt degene gebruiken die overeenkomt met uw meest waarschijnlijke ontwikkelingsstack.

  • Het maken van een SOAP-webservice, een walk-through tutorial voor Java, met behulp van de Spring Tool Suite;
  • Hoe maak je een SOAP Client / Server in PHP, een basis video introductie;
  • Webservices met Ruby, een stapsgewijze handleiding van Tutorials Point;
  • SOAP begrijpen, een .NET-zelfstudie van Microsoft;
  • SOAP Web Services, hoofdstuk 12 van het boek Dive Into Python, dat zich alleen bezighoudt met SOAP;
  • Een SOAP-webservice gebruiken in een iOS-app, van Bharani J’s Tech Blog.

Hulpmiddelen

Bij SOAP-ontwikkeling draait alles om de tooling en (helaas) bieden de meeste beschikbare tutorials niet voldoende tooling-informatie of gaan ze ervan uit dat u een specifieke toolset gebruikt (meestal gemaakt door het bedrijf dat de tutorial heeft gepubliceerd). We geven u een voorsprong met een lijst met enkele van de meer populaire tools voor het ontwikkelen, implementeren en testen van SOAP-webservices.

Hulpmiddelen voor SOAP-ontwikkeling

De ontwikkeling van SOAP-webservices omvat over het algemeen een aantal nauw geïntegreerde tools: IDE’s, WSDL-generatoren, applicatieservers en webservicekaders. Sommige tools in deze lijst zijn ‘full-stack’-tools: ze bieden één pakket dat aan een aantal behoeften van ontwikkelaars voldoet. Anderen bieden slechts een of twee kritieke functies.

  • Metro, een full-stack webservice-tool voor Java, gebouwd voor gebruik met GlassFish, een Java EE7 Application Server;
  • Apache Axis2, een Web Services / SOAP / WSDL-engine met implementaties in Java en C;
  • Windows Communication Foundation, een “uniform programmeermodel” voor het bouwen van webservices, voor gebruik met het .NET-framework;
  • Veel SOAP-ontwikkelaars gebruiken de Eclipse IDE, met hulp van de SoapUI-plug-in;
  • PHP heeft een set ingebouwde SOAP-gerelateerde functies, maar er is ook de NuSOAP Toolkit voor PHP;
  • Soap4R biedt SOAP-tools voor Ruby;
  • SOAPpy is een SOAP-servicesbibliotheek voor Python; er is ook Spyne met een actievere ontwikkeling;
  • Soap voor Node.js;
  • gZeep voor C en C++.

SOAP-ontwikkelingsklanten

Het bouwen van SOAP-services is slechts het halve verhaal; iets moet die diensten daadwerkelijk gebruiken. Toepassingen die SOAP-services gebruiken, worden ‘clients’ genoemd. De hier vermelde tools helpen u toegang te krijgen tot SOAP-services vanuit uw clienttoepassingen. (Verschillende SOAP-ontwikkeltools bieden ook mogelijkheden voor clientontwikkeling.)

  • SOAPEngine, een Objective-C SOAP-client voor OS X- en iOS-ontwikkeling;
  • SUDS, een lichtgewicht Python SOAP-client;
  • De SOAP-functies van PHP omvatten de SOAP Client Class;
  • Savon is een “heavy metal” SOAP-client voor Ruby; er is ook de handzeepbibliotheek;
  • Javascript SOAP Client is een SOAP-client voor (meestal front-end) JavaScript; gebruik voor Node.js het bovengenoemde zeeppakket.

SOAP-testclients

Deze tools geven u toegang tot SOAP-services voor testen en ontwikkeling.

  • SOA Client, een Firefox-browser-add-on voor toegang tot webservices en UDDI-registers;
  • Boemerang – ZEEP & REST Client, een Chrome-extensie voor het testen van SOAP- en REST-services;
  • Generic SOAP Client, een in-browser client voor SOAP-services – goed voor snelle tests, maar niet helemaal geschikt voor serieuze ontwikkeling;
  • Storm, een volledig uitgeruste SOAP-testclient; zie ook WcfStorm, dat andere serviceprotocollen ondersteunt;
  • WebServiceStudio, een andere SOAP-testclient, deze gebaseerd op .NET Webservice Studio;
  • SoapUI, commerciële SOAP-testclient, beschikbaar in een gratis communityeditie en een volledig uitgeruste, betaalde premiumeditie;
  • PocketSoap, een SOAP-client voor Windows; Zie ook de gerelateerde WSDL-wizard, die WSDL-bestanden parseert en een GUI-weergave van beschikbare bewerkingen presenteert.

Op WSDL gebaseerde codegeneratoren

WSDL-documenten bieden een gestructureerde, consumeerbare definitie van een SOAP-webservice. Clienttoepassingen lezen de WSDL en gebruiken deze om passende oproepen naar de service te genereren en te valideren. WSDL-codegeneratoren zetten WSDL-documenten automatisch om in een reeks oproepbare klassen en methoden die een in-language API voor de webservice bieden.

  • Easy WSDL, “The World’s leading WSDL client generator”, voor gebruik met Android- en iOS-ontwikkeling;
  • Wsdl2phpgenerator, een WSDL-codegenerator voor PHP.

Verschillende van de bovengenoemde full-stack- en clientontwikkeltools omvatten ook WSDL-gebaseerde codegeneratie.

Boeken over SOAP

Online tutorials zijn erg handig om aan de slag te gaan. Maar vanwege de complexiteit van de SOAP-architectuur is een van de uitstekende boeken over het onderwerp de beste manier om echt grip te krijgen op het hele ecosysteem.

  • Service Design Patterns: Fundamentele ontwerpoplossingen voor SOAP / WSDL en RESTful Web Services, door Robert Daigneau;
  • Webservices begrijpen: XML, WSDL, SOAP en UDDI, door Eric Newcomer;
  • Web Services Platform Architecture, door Weerawarana, et al;
  • Webservices programmeren met SOAP, door Snell, Tidwell en Kulchenko.

Verder lezen en bronnen

We hebben meer handleidingen, tutorials en infographics met betrekking tot webontwikkeling:

  • XML-bronnen & Validators: leer alles over een van de belangrijkste talen voor gestructureerde gegevensbeschrijvingen.
  • HTML voor beginners – Ultieme gids: als u wilt leren hoe u HTML handmatig kunt coderen, is dit echt de ultieme gids.
  • CSS3 – Intro, gidsen & Bronnen: leer de details van de webpagina-indeling met deze inleiding en gedetailleerde lijst met bronnen.

Ultieme gids voor webhosting

Als u webapplicaties gaat maken, is de kans groot dat u ze ergens moet hosten. Bekijk onze Ultimate Guide to Web Hosting. Het zal alles uitleggen wat u moet weten om een ​​weloverwogen keuze te maken.

Ultieme gids voor webhosting
Ultieme gids voor webhosting

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map