Skip to main content

このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。

HTTP リクエストノードは、ワークフローを外部 API や Web サービスに接続します。データの取得、ウェブフックの送信、ファイルのアップロード、または HTTP リクエストを受け入れる任意のサービスとの統合に使用できます。

HTTP リクエストノードの設定

HTTP リクエストノードの設定

HTTP メソッド#

このノードは、さまざまなタイプの操作に対応する全ての標準 HTTP メソッドをサポートしています:

GET は何も変更せずにサーバーからデータを取得します。ユーザープロファイルの取得、データベースの検索、現在のステータスの取得に使用します。

HEAD は完全なレスポンス本文なしでレスポンスヘッダーを取得します。リソースが存在するかどうかの確認やメタデータの取得に便利です。

設定#

URL、ヘッダー、クエリパラメータ、リクエスト本文、認証を含む HTTP リクエストのあらゆる側面を設定できます。以前のワークフローノードからの変数は、リクエスト設定のどこにでも動的に挿入できます。

変数置換#

二重中括弧を使用してワークフロー変数を参照します:{{variable_name}}。Dify は深いオブジェクトアクセスをサポートしているため、以前の HTTP レスポンスから {{api_response.data.items[0].id}} のようなネストした値を抽出できます。

Secret タイプの環境変数の値は、ワークフロー実行ログとこのノードのリクエストログでマスクされて表示されます。

タイムアウト設定#

HTTP リクエストには、ハングを防ぐための設定可能なタイムアウトがあります:

  • 接続タイムアウト:接続確立の最大時間
  • 読み取りタイムアウト:レスポンスデータ読み取りの最大時間
  • 書き込みタイムアウト:リクエストデータ送信の最大時間

タイムアウトは、ワークフローのパフォーマンスを維持し、リソースの枯渇を防ぐために適用されます。

認証#

このノードは複数の認証タイプをサポートしています:

認証なし(type: "no-auth"されません

API キー(type: "api-key")には 3 つのサブタイプがあります:

  • Basic(type: "basic")- base64 エンコーディングを使用した Basic Auth ヘッダーを追加
  • Bearer(type: "bearer")- Authorization: Bearer <token> ヘッダーを追加
  • カスタム(type: "custom")- 指定された名前と値でカスタムヘッダーを追加

リクエスト本文#

API 要件に基づいて適切な本文タイプを選択します:

  • JSON 構造化データ用
  • フォームデータ 従来の Web フォーム用
  • バイナリ ファイルアップロード用
  • 生テキスト カスタムコンテンツタイプ用

ファイル検出#

HTTP リクエストノードは、高度なロジックを使用してファイルレスポンスを自動的に検出します:

  1. Content-Disposition 分析 - attachment ディスポジションまたはファイル名パラメータをチェック
  2. MIME タイプ評価 - コンテンツタイプを分析してテキストとバイナリを区別
  3. コンテンツサンプリング - 曖昧なタイプについては、最初の 1024 バイトをサンプリングしてテキストパターンを検出

テキストベースのレスポンス(JSON、XML、HTML など)は通常のデータとして扱われ、バイナリコンテンツはファイル変数になります。

ファイル操作#

HTTP リクエストノードは、ファイルのアップロードとダウンロードをシームレスに処理します:

ファイルアップロード設定例

ファイルアップロード設定例

ファイルアップロード はバイナリリクエスト本文オプションを使用します。以前のノードからファイル変数を選択して、文書保存、メディア処理、またはバックアップのために外部サービスにファイルを送信します。

ファイルダウンロード は、レスポンスにファイルコンテンツが含まれている場合に自動的に処理されます。ダウンロードされたファイルは、下流のノードで使用するためのファイル変数として利用可能になります。

エラー処理とリトライ#

外部サービスに依存する本番ワークフロー用の堅牢なエラー処理を設定します:

HTTP リトライ設定

HTTP リトライ設定

リトライ設定 は、設定可能な間隔(最大 5000ms)で失敗したリクエストを最大 10 回まで自動的にリトライします。これは、一時的なネットワークの問題やサービスの利用不能を処理します。

HTTP エラー処理オプション

HTTP エラー処理オプション

エラー処理 は、HTTP リクエストが失敗した場合の代替ワークフローパスを定義し、外部 API が利用できない場合でもワークフローが実行を継続することを保証します。

レスポンス処理#

HTTP レスポンスは、後続のノードで構造化変数となり、以下への個別アクセスが可能です:

  • レスポンス本文 - API によって返されるメインコンテンツ
  • ステータスコード - 条件付きロジック用の HTTP ステータス
  • ヘッダー - キー・値ペアとしてのレスポンスって返される任意のファイルコンテンツ
  • サイズ情報 - 読み取り可能な形式(KB/MB)でのコンテンツサイズ(バイト)

SSL 検証#

SSL 証明書検証はノードごとに設定可能です(ssl_verify パラメータ)。これにより、外部 API のセキュリティを維持しながら、自己署名証明書を使用する内部サービスへの接続が可能になります。

動的 API 統合ワークフロー例

動的 API 統合ワークフロー例

一般的な統合パターン#

API データ取得 - ユーザープロファイル、製品情報、または外部データを取得して、ワークフロー処理を充実させます。

ウェブフック配信 - 通知、ステータス更新、または処理結果を外部システムやサービスに送信します。

ファイル処理 - 分析用の文書をアップロード、さらなる処理用のリソースをダウンロード、またはクラウドストレージサービスとの統合。

マルチステップ API ワークフロー - 複数の API 呼び出しを連鎖させ、一つのリクエストからのレスポンスを使用して後続のリクエストを設定します。