意味
IF_REST_CLIENT
IF_REST_CLIENTインターフェースは、RESTクライアント側で使用されるメソッドを定義します。
これらのメソッドは次の目的で使用されます。
-
リクエストヘッダーフィールドの設定、
-
応答ヘッダーフィールドの取得、
-
コンテンツと応答ステータスの取得、
-
送信するコンテンツを保持するためのRESTエンティティを作成し、
-
ABAPアプリケーションサーバーと通信するときにABAPセッションを解放します(メソッドCLOSE)。
さらに、IF_REST_RESPONSEインターフェースは、HTTPメソッドHEAD、GET、DELETE、OPTIONS、POST、およびPUTを定義するためにこのインターフェースでカバーされています。
HTTPメソッドを定義するために、RESTクライアントクラスは適切なHEAD、GET、DELETE、OPTIONS、POST、またはPUTメソッドを呼び出し、メソッドGET_RESPONSE_ENTITY、GET_RESPONSE_HEADER、およびGET_RESPONSE_HEADERSを介して応答情報を取得します。
CL_REST_HTTP_CLIENT
クラスCL_REST_HTTP_CLIENTは、HTTPを介してRESTベースのWebサービスを呼び出すためのRESTクライアントを実装します。CL_REST_HTTP_CLIENTインスタンスを作成するには、コンストラクターパラメーターとして正しくパラメーター化されたICFHTTPクライアントが必要です。このHTTPクライアントは、すべてのHTTPリクエストに使用されます。
ICF HTTPクライアントをRESTクライアントと一緒に使用する方法の例については、このドキュメントのRESTチュートリアルを参照してください。
CL_REST_LOCAL_CLIENT
CL_REST_LOCAL_CLIENTクラスを使用すると、HTTP通信を設定しなくてもRESTサービスをローカルでテストできます。このクラスのコンストラクターは、呼び出されるRESTアプリケーションクラスへの参照が必要です。これは、RESTクライアントによって呼び出される必要があります。
コンストラクターには、次の入力パラメーターが含まれています。
-
RESTアプリケーションクラス、
-
オプションで、RESTコンテキストを「サーバー側」(実際にはローカルRESTアプリケーション)に渡すことができます。
-
オプションで、ICFノードのパス(入力パラメーターIV_ICF_NODE)を設定して、リソースルーティングが開始するURI位置をRESTルーターに通知できます。
これは、このICFパスパラメータIV_ICF_NODEを使用するための短い例です。
http://www.mycompany.com/sap/bc/rest_cars/Cars/47のようなURLを、URIテンプレートが「/ Cars / {ID:[0-9] +}」であるRESTアプリケーションでテストする場合、ローカル呼び出されたRESTルーターは、いわゆるスクリプト名「 http://www.mycompany.com/sap/bc/rest_cars」(これはICFフレームワークによる要求処理に使用されるURIの一部です)を削除する必要があり、残りの部分「/Cars/ 47」は、RESTリソース処理クラスを検索します(詳細については、サービスの登録とルーティングを参照してください)。
ICFが関与しない市内通話の場合、このパスは入力パラメータIV_ICF_NODEで設定する必要があります。