Apex-Integration: Übersicht
Richten von Callouts an externe Services aus Apex
Apex-Callouts gibt es in zwei Ausprägungen.
- Webservice-Callouts an SOAP-Webservices nutzen XML und erfordern zur Codegenerierung in der Regel ein WSDL-Dokument.
- Für HTTP-Callouts an Services wird meist REST mit JSON verwendet.
Diese beiden Typen von Callouts sind sich hinsichtlich des Sendens einer Anforderung an einen Dienst und des Empfangens einer Antwort ähnlich. Aber während WSDL-basierte Callouts für SOAP-Webservices gelten, können HTTP-Callouts mit beliebigen HTTP-Services, entweder SOAP oder REST, verwendet werden.
Sie werden sich jetzt wahrscheinlich fragen, welchen Typ Sie verwenden sollten. Nutzen Sie nach Möglichkeit einen HTTP-Service. Diese Services ermöglichen zumeist eine einfachere Interaktion, erfordern wesentlich weniger Code und nutzen das einfach lesbare JSON-Format. Alle "coolen" Entwickler sind in den letzten Jahren zu REST-Services übergegangen, was aber nicht besagen soll, dass SOAP-Webservices schlecht sind. Es gibt sie gefühlt seit einer Ewigkeit (in Internetjahren) und sie werden weiterhin für Unternehmensanwendungen genutzt. Mit ihrem "Ableben" in Kürze ist nicht zu rechnen. Sie nutzen SOAP wahrscheinlich am meisten, wenn Sie eine Integration in ältere Anwendungen entwickeln oder für Transaktionen, die ein formales Austauschformat oder zustandsbehaftete Vorgänge verlangen. In dieser Lektion sprechen wir SOAP kurz an, verbringen aber die meiste Zeit mit REST.
Autorisieren von Endpunktadressen
Wir verwenden in diesem Modul die folgenden Endpunkte, die Sie nun hinzufügen sollten. Wenn Sie vergessen sollten, einen Endpunkt hinzuzufügen, erhalten Sie eine Erinnerung, sobald Sie versuchen, Ihren Code auszuführen. Aufrufe werden an die folgenden Websites gerichtet.
- https://th-apex-http-callout.herokuapp.com
- https://th-apex-soap-service.herokuapp.com
Autorisieren Sie diese beiden Endpunkt-URLs über die folgenden Schritte.
- Geben Sie unter "Setup" im Feld Schnellsuche den Text Einstellung für Remote-Standort ein und wählen Sie Einstellung für Remote-Standort aus.
- Klicken Sie auf Neuer Remote-Standort.
- Geben Sie als Namen des Remote-Standorts animals_http ein.
- Geben Sie als URL des Remote-Standorts https://th-apex-http-callout.herokuapp.com ein. Dieser URL autorisiert alle Unterordner für den Endpunkt, wie z. B. https://th-apex-http-callout.herokuapp.com/path1 und https://th-apex-http-callout.herokuapp.com/path2.
- Geben Sie als Beschreibung Trailhead animal service: http ein.
- Klicken Sie auf Speichern & Neu.
- Geben Sie als Namen des zweiten Remote-Standorts animals_soap ein.
- Geben Sie als URL des Remote-Standorts https://th-apex-soap-service.herokuapp.com ein.
- Geben Sie als Beschreibung Trailhead animal service: SOAP.
- Klicken Sie auf Speichern.