このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
別のWebシステムと連携する必要がある場合、HTTPリクエストノードを利用できます。このノードは、実行時に設定に基づいて指定されたアドレスへHTTPリクエストを送信し、JSONまたはapplication/x-www-form-urlencoded形式のデータを送信して、外部システムとのデータ連携を実現します。
Postmanのようなリクエスト送信ツールに慣れている方であれば、HTTPリクエストノードの使い方はすぐに習得できます。これらのツールとは異なり、HTTPリクエストノードの各パラメーターには、現在のワークフローのコンテキスト変数を使用できます。これにより、現在のシステムのビジネス処理と密接に連携させることが可能です。
内蔵プラグインのため、インストールは不要です。
ワークフロー設定画面で、フロー内のプラス(「+」)ボタンをクリックして、「HTTPリクエスト」ノードを追加します。


選択可能なHTTPリクエストメソッドは、GET、POST、PUT、PATCH、DELETEです。
HTTPサービスのURLです。プロトコル部分(http://またはhttps://)を含める必要があり、https://の使用を推奨します。
リクエストヘッダーのContent-Typeです。サポートされている形式については、「リクエストボディ」セクションを参照してください。
リクエストヘッダー部分のキーと値のペアです。値にはワークフローのコンテキスト変数を使用できます。
Content-Typeリクエストヘッダーはリクエストデータ形式で設定済みのため、ここで入力する必要はありません。上書きしても無効になります。
リクエストのクエリ部分のキーと値のペアです。値にはワークフローのコンテキスト変数を使用できます。
リクエストのボディ部分です。選択されたContent-Typeに応じて、異なる形式がサポートされます。
application/json標準的なJSON形式のテキストをサポートしています。テキストエディターの右上にある変数ボタンから、ワークフローのコンテキスト変数を挿入できます。
変数はJSON文字列内で使用する必要があります。例:{ "a": "{{$context.data.a}}" }。
application/x-www-form-urlencodedキーと値のペア形式です。値にはワークフローのコンテキスト変数を使用でき、変数が含まれる場合は文字列テンプレートとして解析され、最終的な文字列値に連結されます。
application/xml標準的なXML形式のテキストをサポートしています。テキストエディターの右上にある変数ボタンから、ワークフローのコンテキスト変数を挿入できます。
multipart/form-data フォームデータのキーと値のペアをサポートしています。データタイプでファイルオブジェクトを選択すると、ファイルをアップロードできます。ファイルは、コンテキスト内に存在するファイルオブジェクトを介してのみ変数で選択できます(例えば、ファイルコレクションのクエリ結果や、関連するファイルコレクションのリレーションデータなど)。
ファイルデータを選択する際は、変数が単一のファイルオブジェクトに対応していることを確認してください(多対多のリレーションシップクエリでは、リレーションシップフィールドの値は配列になるため、ファイルのリストではないことを確認してください)。
リクエストが長時間応答しない場合、タイムアウト設定により、そのリクエストの実行をキャンセルできます。リクエストがタイムアウトすると、現在のワークフローは失敗ステータスで早期に終了します。
リクエストノードは、標準HTTPステータスコードの200から299(含む)を成功ステータスと見なし、それ以外はすべて失敗と見なします。「失敗したリクエストを無視してワークフローを続行する」オプションがチェックされている場合、リクエストが失敗しても、後続の他のワークフローノードの実行が続行されます。
HTTPリクエストの応答結果は、後続のノードで使用できるようにJSONクエリノードで解析できます。
v1.0.0-alpha.16以降のバージョンでは、リクエストノードの応答結果の3つの部分をそれぞれ変数として使用できます。

応答ステータスコードは通常、200や403などの数値形式の標準HTTPステータスコードです(具体的な値はサービスプロバイダーによって異なります)。
応答ヘッダー(Response headers)はJSON形式で、JSON形式の応答データを含みます。これらを使用するには、JSONノードで解析する必要があります。
例えば、リクエストノードを使用してクラウドプラットフォームと連携し、通知SMSを送信できます。Alibaba CloudのSMS送信APIを例にとると、設定は以下のようになります(関連パラメーターは、ご自身でドキュメントを参照して調整してください)。

ワークフローがこのノードの実行をトリガーすると、設定された内容でAlibaba CloudのSMS APIを呼び出します。リクエストが成功した場合、SMSクラウドサービスを通じてSMSが送信されます。