3.3. エラーメッセージの設定
このセクションでは、APIcast のエラーメッセージを設定する方法を説明します。
プロキシーとして、3scale APIcast はリクエストを以下のように管理します。
- エラーがなければ、APIcast はクライアントからのリクエストを API バックエンドサーバーに渡し、API のレスポンスを変更せずにクライアントに返します。レスポンスを変更する場合には、Header Modification ポリシー を使用することができます。
-
API のレスポンスが
404 Not Foundまたは400 Bad Request等のエラーメッセージの場合には、APIcast はそのメッセージをクライアントに返します。ただし、APIcast がAuthentication missing等の他のエラーを検出した場合には、APIcast はエラーメッセージを送信してリクエストを終了させます。
したがって、APIcast がこれらのエラーメッセージを返すように設定することができます。
Authentication failed
このエラーは、クレデンシャルが偽造されているか、アプリケーションが一時的に保留されているかのいずれかにより、API リクエストに有効なクレデンシャルが含まれていないことを意味します。また、このエラーはメトリックが無効 (その値が
0) な場合に生成されます。Authentication missing
API リクエストにクレデンシャルが含まれていない場合には、必ずこのエラーが生成されます。ユーザーが API リクエストにクレデンシャルを追加しなかった場合に起こります。
No match
このエラーは、リクエストがどのマッピングルールにもマッチしなかったため、メトリックが更新されないことを意味します。この状況は必ずしもエラーとは限りませんが、ユーザーが無効なパスを試みているか、マッピングルールが正当なケースに対応していないかのいずれかを意味します。
Usage limit exceeded
このエラーは、リクエストしたエンドポイントに関して、クライアントが流量制御の上限に達したことを意味します。リクエストが複数のマッピングルールにマッチする場合には、クライアントは複数の流量制御の上限に達する可能性があります。
エラーを設定するには、以下の手順に従います。
- [Your_product_name] > Integration > Settings から操作を行います。
- Gateway response セクションで設定するエラーのタイプを選択します。
以下のフィールドの値を指定します。
- Response Code: 3 桁の HTTP レスポンスコード
-
Content-type:
Content-Typeヘッダーの値 - Response Body: レスポンスメッセージのボディーの値
- 変更を保存するには、Update Product をクリックします。