Symfoware

Symfowareについての考察blog

AWS Lambda node.jsのプログラムをローカルで実行する

AWS Lambdaで実行するためのnode.jsプログラム。
ローカルで開発したものをそのままアップロードして使いたい。

良い案がないか考えてみました。


exports.handler



Lambdaにアップロードするプログラムは、エントリーポイントとして
exports.handler
を用意しないといけません。

じゃあ、exports.handlerを呼び出す代理のプログラムを用意して、デバッグ実行すれば
実行確認済のプログラムをそのまま使えるのでは?

踏み台にするプログラムを「proxy.js」
Lambdaに登録するためのプログラムは適当なディレクトリの中に
「index.js」を用意し、記載することにします。

904_01.png


・proxy.js


  1. // index.jsを呼び出す踏み台
  2. 'use strict'
  3. const lambda = require('./sample/')
  4. let event = {'alias':'debug'};
  5. let context = null
  6. let callback = (err) => {
  7.     console.log(err)
  8. }
  9. // lambdaのエントリーポイントを呼び出し
  10. lambda.handler(event, context, callback)




・index.js


  1. 'use strict'
  2. // lambdaに登録するプログラム
  3. exports.handler = (event, context, callback) => {
  4.     
  5.     console.log('hello, world!')
  6. }




実行


$ node proxy.js
hello, world!




これでそのまま使えるindex.jsができました。
多少開発しやすくなった気がします。


関連記事

テーマ:プログラミング - ジャンル:コンピュータ

  1. 2018/06/28(木) 22:27:31|
  2. node.js
  3. | トラックバック:0
  4. | コメント:0
  5. | 編集
<<node.js Redisに接続してデータの登録、取得、削除 | ホーム | Ubuntu Server 18.04にnodejs 8.11.3 LTSと最新版(10.4.1)をインストール>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
https://symfoware.blog.fc2.com/tb.php/2218-e808e894
この記事にトラックバックする(FC2ブログユーザー)