はじめに
AWS の Lambdaに node.js で hello world
が出力されるコードを書きました。
※コードは下記画像に添付しました。
また、
AWS の Lambda にトリガーとして API Gateway を設定しました。
API Gateway のエンドポイントを呼び出すと、
Lambda で設定している関数が呼ばれるので「HelloWorld」と表示されるはずなのですが、
表示されずに{"message": "Internal server error"}
と表示されました。
この時のステータスコードはHTTP 502
でした。
※参考画像
聞きたいこと
HTTP アクセスしてもhello world
というレスポンスを得たいのですが、
どの設定を修正すればよろしいでしょうか。
#試したこと
- 権限の問題かと思ったので、
IAMの設定で手当たり次第にFullAccessの設定をつけました。
→変化なし。ダメでした。
- LambdaやAPI Gatewayの作成手順に問題があるかと思ったので、
LambdaやAPI Gatewayの設定を全て削除して、1から再設定を行いました。
※設定手順は以下の項目のとおりです。
→変化なし。ダメでした。
- Lambdaが正しく動いていないのではないか
AWS Lambdaの設定手順
- ブランク関数の作成
- トリガーとしてAPI Gatewayを設定
- Lambdaの詳細設定
8a72ba6753fc7e3f47d9a82c456400c8.png
(画像が大きいのでリンクにします)
- API Gatewayの設定
統合リクエストの「Lambda プロキシ統合の使用」のチェックをオフにする。
※これをオフにすると API Gatewayのテストが502エラーから成功に変化する。
※ただし、外部からのHTTPアクセスは502のまま変化がない。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/22 01:48