Skip to main content

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
Hinweis

Hinweis

Lernen Sie auf Deutsch? Beginnen Sie die Aufgabe in einem Trailhead Playground in der Sprache Deutsch und verwenden Sie für die Navigation die in Klammern angegebenen Übersetzungen. Kopieren und fügen Sie nur die Angaben in Englisch ein, da zur Überprüfung der Aufgabe Daten in Englisch benötigt werden. Wenn Sie die Aufgabe in Ihrer deutschen Organisation nicht bestehen, empfehlen wir Ihnen folgende Vorgehensweise: (1) Stellen Sie das Gebietsschema auf USA um, (2) legen Sie Englisch als Sprache fest (Anweisungen dazu finden Sie hier) und (3) klicken Sie erneut auf die Schaltfläche "Check Challenge" (Aufgabe überprüfen).

Weitere Details dazu, wie Sie die übersetzte Trailhead-Umgebung optimal nutzen können, finden Sie unter dem Badge "Trailhead in Ihrer Sprache".

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 heißen 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, befassen uns aber hauptsächlich mit REST.

Mit Trail Together einem Dozenten folgen

Möchten Sie bei diesem Schritt einem Experten folgen? Schauen Sie sich dieses Video an, das Teil der Reihe "Trail Together" auf Trailhead Live ist. Einen Link zur vollständigen Sitzung finden Sie im Abschnitt "Ressourcen". 

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 "Quick Find (Schnellsuche)" den Text Remote Site Settings (Einstellungen für Remote-Standort) ein und wählen Sie Remote Site Settings (Einstellungen 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 ein.
  10. Klicken Sie auf Save (Speichern).

Ressourcen

Teilen Sie Ihr Trailhead-Feedback über die Salesforce-Hilfe.

Wir würden uns sehr freuen, von Ihren Erfahrungen mit Trailhead zu hören: Sie können jetzt jederzeit über die Salesforce-Hilfe auf das neue Feedback-Formular zugreifen.

Weitere Infos Weiter zu "Feedback teilen"