Raw Request

概要

このメソッドは、生のHTTPリクエストを実行し、フロー構築者がHTTPリクエストのすべての要素をコントロール可能にします。 これにより、たとえばフローからXMLサービスやHTMLサービスを呼び出せるほか、他の多くの高度な使用法が可能になります。 他のAPI Connector関数は、一般的なJSONベースのサービスで使いやすいよう最適化されています。Raw Request関数はより柔軟ですが、使い方が多少難しくなります。Raw Requestのユースケースのいくつかを示します。

  • XMLサービスを呼び出す:XML Build関数を使用して自分のリクエストを含むXML文字列を作成し、Raw Requestの body入力にドラッグします。 次に、XML Parse関数を使用して body出力を解析し、JSON応答を作成して、フローの以後の部分で使用できます。 HTMLなどのサービスでも同様に動作します。

  • リストでJSON APIを呼び出す:API Connector関数では、bodyでJSONオブジェクトを渡すことが暗黙的に要求されます。 bodyセクションに作成する各入力は、リクエスト本文のキーになります。 別の操作、たとえばオブジェクトではなくオブジェクトのリストを渡す場合は、List関数を使用して希望のリストを構築してから、JSON Stringifyを呼び出して文字列を作成し、Raw Requestの body入力に文字列をドラッグしてRaw Requestを使用します。

  • プログラムでクエリーを構築する:実行時にクエリー文字列を決定するロジックを作成できます。 オブジェクト関数のObject.Construct、Object.Setなどを使用し、フローにクエリーオブジェクトを作成してから、オブジェクトをRaw Requestの query入力にドラッグします。 クエリーオブジェクトは、URLクエリー文字列を次のように変換します。クエリーオブジェクトが{ "x": "one", "y": "two"}なら、クエリー文字列は ?x=one&y=twoになります。

  • プログラムでヘッダーを構築する:上述と同じように、他のAPI Connector関数では設計時にヘッダーのフィールド名を定義することが暗黙的に要求されます。値は動的でもかまいませんが、ヘッダーのフィールド名は固定です。 フロー内でフィールド名を定義するには、オブジェクト関数のObject.Construct、Object.Setなどを使用し、フロー内でヘッダーオブジェクトを作成してから、オブジェクトをRaw Requestの headers 入力にドラッグします。 たとえば、headersオブジェクトが{ "Accept": "text/plain" }なら、リクエストのヘッダー文字列は「Accept: text/plain」になります。

  • 動的キーでJSON APIを呼び出す:上述と同じように、API Connector Post関数では設計時、すなわちフローの構築時にリクエストの本文のキーを作成することが暗黙的に要求されます。 リクエストの本文を実行時に、たとえば入力パラメーターに基づいて構築するには、オブジェクト関数を使用してオブジェクトを構築し、JSON Stringify関数に渡してから、その文字列をRaw Requestの body入力にドラッグします。

Raw Request関数には、あらゆるHTTP呼び出しを成形できる柔軟性があるため、他のHTTP関数で必要な柔軟性が得られない場合、この関数の使用を試してください。

入力フィールド

  • URL (テキスト):必須。リクエストのURL

  • method (ドロップダウン):HTTPメソッドのGET、POST、PUT、PATCH、DELETEのいずれかを選択します

  • headers (オブジェクト):リクエストのヘッダーを表すオブジェクト。 ヘッダーの各キーは、 "key: value"のヘッダー文字列として、"Accept: text/plain"のように解析されます。

  • query (オブジェクト):URLクエリー文字列を表すオブジェクト。ヘッダーの各キーにはURL文字列が追加され、 url?key1=value1&key2=value2&...のようになります。

  • body (テキスト):HTTPリクエストの本文。

出力フィールド

  • statusCode数値):サービスから返されるステータスコード(200、404など)

  • headers (オブジェクト):HTTP応答ヘッダーを表すオブジェクトで、入力の headersオブジェクトと同じ形式です。

  • body (テキスト):HTTP応答。

関連項目

Workflowsの関数

Okta Workflowsの要素について