1.4. 公開ベース URL
公開ベース URL は、3scale により保護されたご自分の API に開発者がリクエストを行うのに使用する URL です。これは、ご自分の 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 は Public Base URL で指定したホスト名に対する呼び出ししか受け付けない点に注意してください。たとえば、上記で使用した Echo API の例で、パブリックベース URL として https://echo-api.3scale.net:443
を指定すると、正しい呼び出しは次のようになります。
curl "https://echo-api.3scale.net:443/hello?user_key=YOUR_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"
ローカルマシンにデプロイしている場合には、ドメインに localhost を使用することもできます。この場合には公開ベース URL は http://localhost:80
のようになり、以下のようにリクエストを行うことができます。
curl "http://localhost:80/hello?user_key=YOUR_USER_KEY"
API サービスが複数ある場合には、それぞれのサービスについてこの公開ベース URL を適切に設定する必要があります。APIcast はホスト名に基づきリクエストをルーティングします。