Apex-Integration: Übersicht

Lernziele

Nachdem Sie diese Lektion abgeschlossen haben, sind Sie in der Lage, die folgenden Aufgaben auszuführen:
  • Beschreiben der Unterschiede zwischen Webservice- und HTTP-Callouts
  • Autorisieren einer externen Website mit Einstellung für Remote-Standort

Richten von Callouts an externe Services aus Apex

Ein Apex-Callout ermöglicht Ihnen die enge Integration Ihres Apex-Codes in einen externen Service. Der Callout richtet einen Aufruf an einen externen Webservice oder sendet eine HTTP-Anforderung aus Apex-Code und empfängt anschließend die Antwort.

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

Sicherheit spielt bei Salesforce eine ganz wichtige Rolle! Deshalb wollen wir immer, wenn Sie einen Callout an eine externe Website richten, sicherstellen, dass dieser autorisiert ist. Wir können einen Codeaufruf ohne vorherige Genehmigung nicht einfach so an einen beliebigen Endpunkt zulassen. Ehe Sie beginnen, mit Callouts zu arbeiten, aktualisieren Sie auf der Seite "Einstellung für Remote-Standort" die Liste genehmigter Websites für Ihre Organisation.

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.

  1. 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.
  2. Klicken Sie auf Neuer Remote-Standort.
  3. Geben Sie als Namen des Remote-Standorts animals_http ein.
  4. 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.
  5. Geben Sie als Beschreibung Trailhead animal service: http ein.
  6. Klicken Sie auf Speichern & Neu.
  7. Geben Sie als Namen des zweiten Remote-Standorts animals_soap ein.
  8. Geben Sie als URL des Remote-Standorts https://th-apex-soap-service.herokuapp.com ein.
  9. Geben Sie als Beschreibung Trailhead animal service: SOAP.
  10. Klicken Sie auf Speichern.
Lernen Sie weiter kostenlos!
Registrieren Sie sich für einen Account, um fortzufahren.
Was ist für Sie drin?
  • Holen Sie sich personalisierte Empfehlungen für Ihre Karriereplanung
  • Erproben Sie Ihre Fähigkeiten mithilfe praktischer Aufgaben und Quizze
  • Verfolgen Sie Ihre Fortschritte nach und teilen Sie sie mit Arbeitgebern
  • Nutzen Sie Mentoren und Karrierechancen