/sam-http-api1

AWS API Gateway の HTTP API の最小サンプルを AWS SAMで

Primary LanguagePython

sam-http-api1

AWS API GatewayのHTTP APIの最小サンプルを AWS SAMで。

もとはSAMのhello worldテンプレートで(Python 3.9)、 変更したのは

  • AWS::Serverless::Function の Events の Type を Api から HttpApi へ変更
  • Outputs の HelloWorldApi の
    • ServerlessRestApi を ServerlessHttpApi へ変更
    • /Prod を削除 (ステージがデフォルト1個しかないみたい)。
    • 最後の/を削除

デプロイ

デプロイは普通に sam build && sam deploy --guided で。

HelloWorldFunction may not have authorization defined, Is this okay? [y/N]:

だけ yで(次のバージョンでJWTオーソライザーをつける予定)、 他はデフォルトで。

注意点

HTTP APIをサポートしていないリージョンがある(大阪とか)。

AWSコンソールのスタックのリソースの AWS::ApiGatewayV2::Api からのリンクが壊れている。 Lambdaのほうから回れば行ける。

レスポンスのContent-Typeが text/plain 。REST APIのほうはMIMEがJSONだったような気がする。

参考リンク