第1章 3scale API Management APIcast API ゲートウェイの高度な操作の紹介
3scale APIcast の高度な操作の概要は、アプリケーションプログラミングインターフェイス (API) へのアクセスの設定を調整するのに役立ちます。
1.1. 3scale API Management API を呼び出すための公開ベース URL リンクのコピーリンクがクリップボードにコピーされました!
公開ベース URL は API 利用者がご自分の API プロダクトにリクエストを行うのに使用する URL で、3scale により公開されます。これは、ご自分の APIcast インスタンスの URL になります。
Self-managed デプロイメントオプションのいずれかを使用している場合 には、それぞれの環境 (ステージングおよび実稼働環境) について、ご自分の管理するドメインに属する専用の公開ベース URL を選択することができます。この URL はご自分の API バックエンドの URL とは別で、たとえば https://api.yourdomain.com:443 のようになります。ここで、yourdomain.com はご自分のドメインです。公開ベース URL を設定したら必ず変更を保存し、必要に応じてステージング環境の変更を実稼働環境にプロモートしてください。
指定する公開ベース URL は、OpenShift クラスターで利用可能なポートを使用する必要があります。デフォルトでは、OpenShift のルーターは標準の HTTP および HTTPS ポート (80 および 443) の接続しかリッスンしません。ユーザーに他のポート経由で API に接続してもらう場合は、OpenShift の管理者と連携してそのポートを有効にします。
APIcast は公開ベース URL で指定したホスト名に対する呼び出ししか受け付けません。たとえば、公開ベース URL を https://echo-api.3scale.net:443 と指定した場合には、正しい呼び出しは以下のようになります。
curl "https://echo-api.3scale.net:443/hello?user_key=you_user_key"
curl "https://echo-api.3scale.net:443/hello?user_key=you_user_key"
API に公開ドメインがない場合には、リクエストに APIcast の IP アドレスを使用することができます。ただし、実際のドメインではなくても良いので、Public Base URL フィールドには値を指定する必要があります。その場合には、Host ヘッダーでホストを指定するようにしてください。以下に例を示します。
curl "http://192.0.2.12:80/hello?user_key=your_user_key" -H "Host: echo-api.3scale.net"
curl "http://192.0.2.12:80/hello?user_key=your_user_key" -H "Host: echo-api.3scale.net"
ローカルマシンにデプロイしている場合には、ドメインを "localhost" と指定することができます。この場合には公開ベース URL は http://localhost:80 のようになり、以下のようにリクエストを行うことができます。
curl "http://localhost:80/hello?user_key=your_user_key"
curl "http://localhost:80/hello?user_key=your_user_key"
API プロダクトが複数ある場合には、それぞれのプロダクトに公開ベース URL を適切に設定します。APIcast はホスト名に基づきリクエストをルーティングします。