AWS CDK- apiGatewayのadd_gateway_responseではまった

API Gatewayからエラー時に返ってくるレスポンスを定義したいときはadd_gateway_responseを利用する。TypeScriptだとaddGatewayResponseかな。

たとえばCORSヘッダーくっつけて返してほしいときとかに使うんじゃないだろうか。

api = apigw.RestApi(self, "may_api")
api.add_gateway_response("access_error", type=apigw.ResponseType.ACCESS_DENIED, response_headers={"Access-Control-Allow-Origin":"*"})

これでできるかと思ったらうまくいかない。ドキュメントの通りやったはずなのになぜ。

api = apigw.RestApi(self, "may_api")
api.add_gateway_response("access_error", type=apigw.ResponseType.ACCESS_DENIED, response_headers={"Access-Control-Allow-Origin":"'*'"})

こうしたらうまくいった。・・・ぱっと見で違いがわかった人はすごい。

違うのはresponse_headersのvalue部分。一重引用符で囲んで上げる必要があるらしい。 わかりにくいわ。

{“Access-Control-Allow-Origin": " '*’ “}

CDK

Posted by gran-gran-gran