本記事について
この記事はプログラミング初学者の私が学んでいく中でわからない単語や概要を分かりやすくまとめたものです。
もし不正などありましたらコメントにてお知らせいただければ幸いです。
前回
https://qiita.com/kou1121/items/f3a1a67c3aab6d89dd58
REST API リソース作成
API Gatewayを開く
APIタイプを選択で REST API 選択
選択したら画面遷移しますので
プロトコルを選択を
REST
新しいAPIの作成
新しいAPI
API名を入れてください
入れましたらAPIの作成をクリック
リソース
リソースを選びます。
次にリソースのアクションを選び
リソースの作成を選ぶ
リソース名を入れたら
右下のリソースの作成をクリック
postメソッド
先ほど作ったリソースに紐づくメソッドを作成
先ほどのリソースを選んだ状態でアクションのメソッドをクリックしますと
メソッドの作成を選べますのでそれをクリック
そうすると自分の作ったリソースにプルダウンメニューが現れますので
そちらからpostを選択、そして✅ボタンを押してください。
統合タイプは
Lambda関数
Lambdaリージョン
そのまま
Lambda関数
これはこのAPIにpostメソッドで呼ばれたときに、どのLambda関数呼ばれるかの紐づけを行う。
先ほど作ったusers-post-functionを入れる。
保存ボタンをクリック
ポップアップが出てくるので、問題がなければOKをクリック
次にマッピングテンプレートの定義をするために
統合リクエストをクリック
一番下にマッピングテンプレートがあると思いますのでそこを開いてください
次にマッピングテンプレートの追加をクリック
application/jsonと入れて✅ボタンをクリック
ポップアップが出てくるので
「はい、この統合を保護します」
をクリック
マッピングテンプレートの入力を行えるので
{
"body" : "$util.escapeJavaScript($input.body)"
}
json形式であり、keyとvalue形式になっている。
$input
クライアントからのリクエストパラメーターを指す
Httpのリクエストパラメーターはヘッダーとボディに分かれており、
$input.body
でリクエストパラメーターのボディ部を取ることが書かれている。
escapeJavaScript
を使用して必要な文字はエスケープを行う。
こちらが終わりましたら保存ボタンをおしてください。
(何も出ません)
APIのデプロイ
postメソッドを選んだ状態で
アクションをクリックすると
APIのデプロイがありますのでそれをクリック
デプロイされるステージ
新しいステージ
ステージ名
今回は users-stage
終わったらデプロイをクリック
URLの呼び出しと出ますのでこれで大丈夫です。
getメソッド
上を参考
{
"id" : "$input.params('id')"
}
params
リクエストパラメーターを取ってくる
APIのデプロイ
ステージをusers-stageを選択
putメソッド
上を参考
{
"body" : "$util.escapeJavaScript($input.body)"
}
APIのデプロイ
ステージをusers-stageを選択
putメソッド
上を参考
{
"body" : "$util.escapeJavaScript($input.body)"
}
APIのデプロイ
ステージをusers-stageを選択
deleteメソッド
上を参考
{
"id" : "$input.params('id')"
}
APIのデプロイ
ステージをusers-stageを選択
参考