Skip to main content

Crate api_handler

Crate api_handler 

Source
Expand description

§バックエンドAPIデータベース Lambda ハンドラー

このモジュールは、AWS Lambda上で動作するコンタクトフォームAPIのエントリーポイントです。 Amazon API Gateway HTTP API からのリクエストを受け取り、JWTトークンによる認証を行った後、 HTTPメソッドに基づいて適切なハンドラーにルーティングします。

§アーキテクチャ概要

クライアント
  └─▶ Amazon API Gateway HTTP API (JWT Authorizer)
        └─▶ AWS Lambda (このモジュール)
              └─▶ Amazon Aurora DSQL (SeaORM経由)

§認証フロー

  1. クライアントは Amazon Cognito からJWT IDトークンを取得する
  2. JWT IDトークンを Authorization: Bearer <token> ヘッダーに付与してリクエストを送信する
  3. API Gateway の JWT Authorizer がトークンを検証する
  4. 検証済みのJWTクレーム(emailsub)が requestContext.authorizer.jwt.claims に格納される
  5. このモジュールがクレームを読み取り、ユーザーを識別する

§サポートするエンドポイント

メソッドパス説明
GET/inquiries認証済みユーザーのお問い合わせ一覧を取得
POST/inquiries新規お問い合わせを作成

§環境変数

変数名必須説明
DSQL_ENDPOINTAurora DSQLクラスターのエンドポイント
DSQL_REGIONAurora DSQLクラスターのAWSリージョン
CORS_ORIGIN-許可するCORSオリジン(デフォルト: https://ngicf-testpage.pages.dev

Modules§

db 🔒
データベース接続モジュール
handlers 🔒
HTTPリクエストハンドラーモジュール
models 🔒
データモデルモジュール

Statics§

CORS_ORIGIN 🔒

Functions§

function_handler 🔒
メインのLambda関数ハンドラー
main 🔒
Lambda関数のエントリーポイント