AWS Lambda の関数を HTML から呼ぶ

2019年9月3日

はじめに

AWS Lambda の関数を HTML から呼びたい。

Lambda の関数を HTML から呼ぶ

AWS SDK for JavaScript を用いる。

<script src="https://sdk.amazonaws.com/js/aws-sdk-2.521.0.min.js"></script>

最新のバージョン番号は、上記リンクで確認する。

呼び出しは以下のように行う。Labmda から Lambda を呼ぶのとほぼ同様だが、接続のための設定が必要。アクセスキー ID とシークレットアクセスキーがいる。

invoke_lambda.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Lambda の呼び出し</title>
  </head>
  <body>
    <script src="https://sdk.amazonaws.com/js/aws-sdk-2.521.0.min.js"></script>
    <script>
      AWS.config.update({
        accessKeyId : '<アクセスキーID>',
        secretAccessKey : '<シークレットアクセスキー>'
      });
      AWS.config.region = 'ap-northeast-1';

      const lambda = new AWS.Lambda();

      const params = {
        FunctionName: 'helloWorld2',
        InvocationType: 'RequestResponse',
        LogType: 'Tail',
        Payload: '{ "data" : "にゃーん" }'
      };

      lambda.invoke(params, function(err, data) {
        if (err) {
          console.log(err);
        } else {
          alert(JSON.parse(data.Payload));
        }
      });
    </script>
  </body>
</html>