API GatewayのゲートウェイレスポンスをCloudFormationで設定する方法


API GatewayのゲートウェイレスポンスをCloudFormationで設定したいんだけど、やり方がわからないんだよね…
こんな疑問にお答えします。
- 本記事の執筆者
本記事を書いている僕はエンジニア歴7年です。
AWSは業務歴2年半なので、かなり有益な情報を発信できるかと思います。
結論、API GatewayのゲートウェイレスポンスをCloudFormationで設定するのは非常に簡単です。
具体的なソースコードを載せているので安心してくださいね。


本記事を読んでいただければ、API GatewayのゲートウェイレスポンスをCloudFormationで設定する方法が理解できるので、早速見ていきましょう。



すぐ読み終わるので、是非最後まで読んでみてください!
ゲートウェイレスポンスをCloudFormationで設定する方法
早速ですが、ゲートウェイレスポンスをCloudFormationで設定する方法を解説します。
AWSTemplateFormatVersion: 2010-09-09
Resources:
RestApi:
Type: AWS::ApiGateway::RestApi
Properties:
Name: hello-world
GatewayResponse:
Type: AWS::ApiGateway::GatewayResponse
Properties:
ResponseParameters:
gatewayresponse.header.Access-Control-Allow-Origin: "'*'"
ResponseType: EXPIRED_TOKEN
RestApiId: !Ref RestApi
StatusCode: '403'
yamlファイルを用意します。



今回は、hello-worldというAPI Gatewayにゲートウェイレスポンスの設定を追加します。
EXPIRED_TOKEN(期限切れのトークン)のレスポンスヘッダに「Access-Control-Allow-Origin」を設定します。


CloudFormationを開き、スタックの作成をクリックします。


先ほど作成したyamlファイルをアップロードし、次へをクリックします。


スタックの名前を入力し、次へをクリックします。


デフォルトのまま、次へをクリックします。


デフォルトのまま、送信をクリックします。


スタックのステータスが「CREATE_COMPLETE」になればOKです。


API Gatewayのゲートウェイレスポンスにレスポンスヘッダが設定されていれば完了です。



簡単でしたね。
ゲートウェイレスポンスのレスポンスタイプ
ゲートウェイレスポンスのレスポンスタイプ(responseType)は以下になります。
- DEFAULT_4XX
- DEFAULT_5XX
- RESOURCE_NOT_FOUND
- UNAUTHORIZED
- INVALID_API_KEY
- ACCESS_DENIED
- AUTHORIZER_FAILURE
- AUTHORIZER_CONFIGURATION_ERROR
- INVALID_SIGNATURE
- EXPIRED_TOKEN
- MISSING_AUTHENTICATION_TOKEN
- INTEGRATION_FAILURE
- INTEGRATION_TIMEOUT
- API_CONFIGURATION_ERROR
- UNSUPPORTED_MEDIA_TYPE
- BAD_REQUEST_PARAMETERS
- BAD_REQUEST_BODY
- REQUEST_TOO_LARGE
- THROTTLED
- QUOTA_EXCEEDED
よくある質問|ゲートウェイレスポンスをCloudFormationで設定する方法
- GatewayResponseの公式ドキュメントはありますか?
-
下記になります。
公式GatewayResponse – Amazon API Gateway A gateway response of a given response type and status code, with optional response parameters and mapping templates.公式AWS::ApiGateway::GatewayResponse – AWS CloudFormation Use the AWS CloudFormation AWS::ApiGateway::GatewayResponse resource for ApiGateway.
まとめ|GatewayResponseを定義しよう!
今回は、API GatewayのゲートウェイレスポンスをCloudFormationで設定する方法について解説しました。
以下が本記事のまとめになります。
- CloudFormationのGatewayResponseを定義すればゲートウェイレスポンスに反映される。
この記事があなたのお役に立てば幸いです。
サイト内には、他にも初心者向けの記事を多く投稿していますので良ければ参考にしてみてください。
最後までお読みいただきありがとうございました!

