はじめに
通常、終了ステップはHTTPレスポンスコードとしてHTTP 200を返して終了します。終了ステップのプロパティを変更することで、次の設定が可能です。
- 任意のHTTPレスポンスコードの指定
- 任意のHTTPレスポンスヘッダーの指定
これらの設定を行うことにより、出力フィールドによるHTTPレスポンスボディ以外での応答結果の表現が可能となり、より柔軟にCAIプロセスを実装できます。
なお、この記事は次の記事の内容を理解していることを前提としています。
終了ステップによるHTTPレスポンスコード/ヘッダーの設定
CAIプロセスの作成
次の手順では、任意のHTTPレスポンスコード/ヘッダーを返すCAIプロセスを作成しています。
なお、今回は開始/終了ステップのみでCAIプロセスを実装していますが、実際のシステム開発ではディシジョンステップを使って条件別にHTTP 200以外のレスポンスコードやヘッダーを返すように実装します。
CAIプロセスの実行
以下、curlコマンドを例とした動作確認結果です。curlの --head オプションを指定することで、HTTPリクエスト実行時のレスポンスヘッダーより指定したHTTPレスポンスコード/ヘッダーが確認できます。
curlコマンドと実行結果
// curl コマンド
curl --head https://<IICS・CAIサーバー>/active-bpel/public/rt/<Org ID>/recipe-pca-stepEnd
// 実行結果
HTTP/2 505 <--- ★★★指定したHTTPレスポンスコード★★★
date: Thu, 12 Dec 2024 22:04:59 GMT
content-type: application/json;charset=utf-8
cache-control: private
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
x-xss-protection: 1; mode=block
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-frame-options: SAMEORIGIN
xxx-header1: headerTest <--- ★★★指定したHTTPレスポンスヘッダー★★★
x-http-status: 505
x-instanceid: 1051983032577794048
vary: accept-encoding
x-envoy-upstream-service-time: 35
server: istio-envoy