リクエストの送信
マイクロサービス対応トランザクション・マネージャREST APIを使用してリクエストを送信するときは、次のガイドラインに従います。
Istioイングレス・ゲートウェイのIPアドレスの確認
マイクロサービス対応トランザクション・マネージャをKubernetesクラスタにインストールした場合は、リクエストを送信する前に、Istioイングレス・ゲートウェイの外部IPアドレスを書き留めておく必要があります。
次のコマンドを実行して、Istioイングレス・ゲートウェイの外部IPアドレスを確認します。
コマンド
kubectl get svc istio-ingressgateway -n istio-system
サンプル出力
kubectl get svc istio-ingressgateway -n istio-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
istio-ingressgateway LoadBalancer 10.109........ 192.0.2.1 15021:31695/TCP,80:32333/TCP,443:7777/TCP 44h
Istioイングレス・ゲートウェイの外部IPアドレスと、構成したアクセス・プロトコルに応じてHTTPまたはHTTPSトラフィックに関連付けられたポートを書き留めます。たとえば、192.0.2.1:443
です。
必要なロール
環境の権限を設定して、管理者のみがマイクロサービス対応トランザクション・マネージャ REST APIを使用してトランザクションを表示および管理できるようにします。
Kubernetes環境でのリクエストのURL構造
マイクロサービス対応トランザクション・マネージャをKubernetesクラスタにインストールした場合、リクエストのURL構造は次のとおりです:
https://<Istio-gateway-IP-address>:<port>/<resource-path>
説明
-
<Istio-gateway-IP-address>:<port>
は、環境内のIstioイングレス・ゲートウェイの外部IPアドレスおよびポート番号の値です。 -
<resource-path>
: リソースを定義する相対パス。たとえば、/admin/v1/xa-transaction
です。
例
RESTエンドポイントURLの例は、https://192.0.2.1:443/admin/v1/xa-transaction
です。
Docker環境でのリクエストのURL構造
マイクロサービス対応トランザクション・マネージャをDocker Swarmにインストールした場合、リクエストのURL構造は次のとおりです:
https://<Docker-registry-IP-address>:<port>/<resource-path>
説明
-
<Docker-registry-IP-address>
: 作成したDockerレジストリのIPアドレス。 <port>
: マイクロサービス対応トランザクション・マネージャのtcs.yaml
のlistenAddr
プロパティに入力したポート番号。たとえば、5000
です。このポートを介したインバウンドおよびアウトバウンドのHTTPSまたはHTTPトラフィックを許可するために必要なネットワーキング・ルールを設定したことを確認します。-
<resource-path>
: リソースを定義する相対パス。たとえば、/admin/v1/xa-transaction
です。
例
RESTエンドポイントURLの例は、https://198.51.100.1:5000/admin/v1/xa-transaction
です。
サポートされているメソッド
次の表にまとめているように、標準のHTTPメソッド・リクエストを使用してトランザクションを表示、更新および削除できます。
HTTPメソッド | 説明 |
---|---|
POST |
リクエスト本文でJSON形式のデータを使用し、リクエストを作成します。 |
GET |
指定されたトランザクション(1つまたは複数)に関する情報を取得します。 |
PUT |
LRAトランザクションの取消しまたは確定、XAトランザクションのコミット、TCCトランザクションの確定を行うことで、トランザクション・ステータスを更新します。 |
DELETE |
TCCトランザクションの取消しまたはXAトランザクションのロールバックを行います。 |
APIコールの実行対象になる各オブジェクトは、URIを使用して一意に識別されます。メソッドによっては特定のオブジェクトでサポートされないことに注意してください。オブジェクトごとに呼び出すことができるメソッドを確認するには、すべてのRESTエンドポイントを参照してください。
メディア・タイプ
マイクロサービス対応トランザクション・マネージャREST APIでは、次のメディア・タイプがサポートされています:
-
application/json
サポートされているヘッダー
Oracle Compute Cloud Service REST APIは、HTTPリクエストまたはレスポンスのヘッダー・セクションで渡される可能性のある次のヘッダーをサポートしています。
ヘッダー | 説明 | 例 |
Content-Type: |
APIサーバーに送信されるHTTPリクエスト本文のすべての内容は、JavaScript Object Notation (JSON)でエンコードされる必要があります。また、APIプロトコル・バージョンもリクエスト・メッセージとレスポンス・メッセージ両方の サーバーは、レスポンスで予期されるデータのバージョンを クライアントによってリクエストに指定されたバージョンをサーバーがサポートしていない場合は、HTTPステータス・コード415 (Unsupported Media Type)で応答します。サーバーが、クライアントでサポートされているバージョンでレスポンスを送信できない場合は、ステータス・コード406 (Not Acceptable)で応答します。 |
Content-Type: application/json |
Cookie: |
|
Cookie: $COMPUTE_COOKIE
|