1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon API GatewayでMock APIを作ってみた

Posted at

はじめに

こんにちは。
最近はとにかくモンハンワイルズの発売が楽しみです。
さて、モンハンとかけまして、AWSと解きます。
その心は「どちらもスキルが重要」でしょう。(?)

今回はAmazon API Gatewayを単体で触ってみます
まずは、APIを他サービスと連携させず、テスト用のMock APIを作成し、意図したレスポンスが返されるのかを試してみます。

本記事は以下記事の続編です。

↓参考にしたハンズオンはこちら。

やってみた

マネジメントコンソールにアクセスし、API Gatewayのページに飛び、「APIの作成」をクリックします。
image.png

今回はREST APIを作成します。「構築」をクリックします。
image.png

「新しいAPI」を選択し、API名と説明(任意)を入力します。
APIエンドポイントタイプは「リージョン」を選択し、「APIを作成」をクリックします。
image.png

次に「リソースを作成」をクリックします。
image.png

リソース名は「sample」とします。
「リソースを作成」をクリックします。
image.png

「メソッドを作成」をクリックします。
image.png

メソッドタイプは「GET」とし、統合タイプは「Mock」を選択します。
image.png

下の方にスクロールして「メソッドを作成」をクリックします。
image.png

「統合レスポンス」をクリックします。
image.png

「編集」をクリックします。
image.png

「マッピングテンプレート」を開きます。
image.png

以下のJSONを入力して「保存」をクリックします。
MockAPIなので、最終的にこのコードがそのまま画面に表示されます。
image.png

入力するコードは以下です。

マッピングテンプレート
{
    "statusCode": 200,
    "body": {
        {
            "report_id": 5,
            "report_title": "Hello, World"
        },
        {
            "report_id": 7,
            "report_title": "こんにちは"
        }
    }
}

ここでテストしてみます。
「テスト」タブを開きます。
image.png

「テスト」をクリックします。
image.png

テストが実行されました。
image.png

画面を上にスクロールして「APIをデプロイ」をクリックします。
image.png

ステージに「新しいステージ」を選択し、ステージ名に「dev」と入力します。
入力後、「デプロイ」をクリックします。
image.png

左側の+ボタンを3回クリックして「GET」を出し、「URLを呼び出す」の欄に記載されているURLをコピーします。
image.png

コピーしたURLをブラウザから叩きます。
image.png

無事、作成したMock APIが表示されました。
今回はこれで以上です。

おわりに

今回はAPI GatewayでMock APIを作ってみました。
正直、今まではREST APIが何なのかもよく分かりませんでした。
調べながらハンズオンを実施したことで、基礎の基礎を習得できた気がします
次回はLambdaと連携させてみます。

AdobeStock_707432917.jpeg

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?