1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS Lambda + API Gatewayで世界へこんにちはする

Last updated at Posted at 2020-04-09

はじめに

サーバーレスってなんだろう?
という疑問を解決すべく、ある程度勉強したのちにAWS Lambda + API Gatewayで遊んでました。
その中で、とりあえず LambdaとAPIGatewayの使い方はなんとなくわかってきたので、基本であるHello Worldをやってみます!

手順

###(1)AWS Lambdaで関数を作成

「関数を作成」をクリックします

スクリーンショット 2020-04-09 14.33.41.png

「1から作成」を選択します。今回は、関数名を「helloWorld」とします。
スクリーンショット 2020-04-09 14.05.27.png

「関数コード」で「コードをインラインで編集」を選択し、下記コードを入力

exports.handler = async (event) => {
    // TODO implement
    const greeting = "Hello World!!"
    return greeting;
};

入力後関数を保存します。
テストイベントに関しては、今回は使用しません。
こちらを使用すれば、eventオブジェクトに入るプロパティを作成することができます。
POSTを使用する際に使うのかもしれませんが、まだわかっていません(笑)

(2)API GatewayでAPIを作成、デプロイ

「APIを作成」をクリックします。

API名はなんでもいいです。
今回はわかりやすく「HelloWorldAPI」とします。

スクリーンショット 2020-04-09 14.08.14.png

「リソースを作成」を選択します。
ここでURL規則を設定することができます。今回は「/hello」を追加します。
「〜〜/hello」をいうURLに対しての処理をLambdaに作成した関数にやらせることとなります。

スクリーンショット 2020-04-09 14.08.34.png

「メソッドを作成」をクリックし、GETを選択します。
Lambda関数名を入力するフォームに。先ほど作成した「helloWorld」関数を入力します。

スクリーンショット 2020-04-09 14.09.00.png

「APIのデプロイ」を選択します。
ステージ名はなんでも良いです。

スクリーンショット 2020-04-09 14.09.57.png

(3)curlでテスト

デプロイした際に使用できるURLが表示されるかと思います。
それを使ってcurlでGETメソッドを送ってみましょう。

$ curl -X GET  https://○○○.amazonaws.com/dev/hello
"Hello World!!"

終わり

おしまい。
DynamoDBの接続とか、POSTメソッドとかやってみるともっと面白いですね。
DynamoDBの接続はなぜかうまくいかないため苦戦中。

1
1
0

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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?