Amazon API GatewayによるREST APIの構築

Amazon

はじめに

以下の調査をもとに、REST APIを構築する

API Gatewayの種類

API Gateway type

  • HTTP API
    • HTTP API は低価格で提供できるように最小限の機能で設計されています。
  • WebSocket API
    • ウェブブラウザとサーバー間でセッションを確立し、双方向通信を可能とします。
  • REST API
    • API キー、クライアントごとのスロットリング、リクエストの検証、AWS WAF の統合、プライベート API エンドポイントなどの機能が必要な場合は、REST API を選択します。
  • REST API Private
    • VPC内のみでアクセス可能なREST APIを生成します。

API Endpoint type

  • Regional
    • 現在のAWSリージョン内にデプロイされます
  • Edge-optimized
    • 最も近いCloudFront POPにリクエストをルーティングします
  • Private
    • VPC内からのみアクセスできます

開発

APIの作成

  • API名:自由記入

リソースの作成

  • リソース名:自由記入
  • CORS:チェックするとOPTIONSメソッドをデフォルト値で作成する

メソッドの作成

  • メソッドタイプ:POST, GET, … から選択
  • Integration タイプ:Lambda, … から選択
    • Lambdaの場合
      • Lambda Functionの指定
  • Method requestの設定
    • API key requiredをTrueに設定
      • API keyによりセキュリティを高める
  • Integration requestの設定
    • Lambda proxy integrationをTrueに設定
      • Lambda関数の引数のeventにpath, httpMethod, bodyなどが入り、bodyにデータ本体が入る

Lambdaの開発

デプロイAPIの実行

  • ステージの作成:自由記入。例)dev
  • invoke URL: https://xxx.execute-api.ap-northeast-1.amazonaws.com/dev

呼び出し

curl -X POST https://xxx.execute-api.ap-northeast-1.amazonaws.com/dev/meetings \
  -H "Content-Type: application/json" \
  -d '{"order_id":1,"meeting_type":"google","state":"init","schedule":"2024-08-16T00:00:00.000Z","created_at":"2024-08-16T00:00:00.000Z","updated_at":"2024-08-16T00:00:00.000Z","link":"aaa"}'

関連記事

カテゴリー

アーカイブ

Lang »