Skip to main content

Apex インテグレーションの概要

学習の目的

このモジュールを完了すると、次のことができるようになります。

  • Web サービスと HTTP コールアウトの違いを説明する。
  • [リモートサイトの設定] で外部サイトを承認する。
メモ

メモ

日本語で受講されている方へChallenge は日本語の Trailhead Playground で開始し、日本との値をコピーして貼り付けます。日本語の組織で Challenge が不合格だった場合は、(1) この手順に従って [Locale (地域)] を [United States (米国)] に切り替え、(2) [Language (言語)] を [English (英語)] に切り替えてから、(3) [Check Challenge (Challenge を確認)] ボタンをクリックしてみることをお勧めします。

翻訳版 Trailhead を活用する方法の詳細は、自分の言語の Trailhead バッジを参照してください。

Apex からの外部サービスへのコールアウトの実行

Apex コールアウトを使用すると、Apex コードと外部サービスを緊密に統合できます。コールアウトでは、Apex コードから外部 Web サービスへのコールを実行したり、HTTP 要求を送信したりして、その応答を受信します。

Apex コールアウトは 2 種類あります。

  • SOAP Web サービスへの Web サービスコールアウトでは XML を使用し、通常はコード生成に WSDL ドキュメントが必要になります。
  • サービスへの HTTP コールアウトでは REST と JSON を使用します。

これらの 2 種類のコールアウトは、要求をサービスに送信して応答を受信するという点では似ています。ただし、WSDL ベースのコールアウトは SOAP Web サービスに適用され、HTTP コールアウトは HTTP サービス (SOAP または REST) で使用できます。

そのため、「どちらを使用すべきか?」と疑問に思っている方は、できる限り HTTP サービスを使用してください。一般的に、これらのサービスの方が操作が簡単で、必要なコードが大幅に少なく、読みやすい JSON を利用できます。ここ数年間で「クールな若者」はみな REST サービスに切り替えていますが、SOAP Web サービスが悪いというわけではありません。SOAP Web サービスには (インターネットイヤーでは) 非常に長い歴史があり、主にエンタープライズアプリケーションで使用されています。これらがすぐになくなるということはありません。SOAP は、主に従来のアプリケーションと統合する場合や、正規の交換形式またはステートフル操作を必要とするトランザクションで使用することになるでしょう。このモジュールでは SOAP についても軽く触れますが、大半を REST についての説明に費やします。

一緒にトレイルを進みましょう

エキスパートの説明を見ながらこのステップを実行したい場合は、次の動画をご覧ください。これは Trailhead Live の「Trail Together」(一緒にトレイル) シリーズの一部です。完全なセッションへのリンクは、「リソース」セクションを参照してください。 

エンドポイントアドレスの承認

私たちは Salesforce でセキュリティを確保することに強い誇りをもっています。ですから、お客様が外部サイトへのコールアウトを実行するときは、そのコールアウトが常に承認済みであるようにしたいと思っています。事前の承認を行わず、行き当たりばったりにコードで任意のエンドポイントにコールアウトさせることはできません。コールアウトの作業を開始する前に、[リモートサイトの設定] ページで組織の承認済みサイトのリストを更新します。

このモジュールでは、次のエンドポイントを使用するため、これらのエンドポイントを今すぐ追加してください。エンドポイントを追加するのを忘れても、コードの実行時に通知されるので心配はいりません。次のサイトへのコールを実行します。

  • https://th-apex-http-callout.herokuapp.com
  • https://th-apex-soap-service.herokuapp.com

次の手順に従って、これらのエンドポイント URL を両方とも承認します。

  1. [Setup (設定)] から、[Quick Find (クイック検索)] ボックスに Remote Site Settings (リモートサイトの設定) と入力し、[Remote Site Settings (リモートサイトの設定)] をクリックします。
  2. [新規リモートサイト] をクリックします。
  3. リモートサイト名に animals_http と入力します。
  4. リモートサイトの URL に https://th-apex-http-callout.herokuapp.com と入力します。
    この URL では、エンドポイントのすべてのサブフォルダー (https://th-apex-http-callout.herokuapp.com/path1 や https://th-apex-http-callout.herokuapp.com/path2 など) が承認されます。
  5. 説明に Trailhead animal service:HTTP (Trailhead 動物サービス: HTTP) と入力します。
  6. [保存 & 新規] をクリックします。
  7. 2 番目のリモートサイト名に animals_soap と入力します。
  8. リモートサイトの URL に https://th-apex-soap-service.herokuapp.com と入力します。
  9. 説明に Trailhead animal service:SOAP (Trailhead 動物サービス: SOAP) と入力します。
  10. [Save (保存)] をクリックします。

リソース

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む