测试aws lambda函数

qaxu7uf2  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(379)

我需要创建一个lambda函数来充当移动java应用程序和awsrdsmysql数据库之间的中间人。其思想是从移动应用程序提交查询,然后将它们发送到lambda函数,然后lambda函数将返回查询。我在aws lambda中设置了一个基本的mysql查询:

var mysql = require('mysql');
var config = require('./config.json');
var pool  = mysql.createPool({
  host            : config.dbhost,
  user            : config.dbuser,
  password        : config.dbpassword,
  database        : config.dbname
});

exports.handler = (event, context, callback) -> {
    context.callbackWaitsForEmptyEventLoop = false;
    pool.getConnection(function(err, connection) {
      if (err) throw err; // not connected!

      // Use the connection
      connection.query('select Album from record', function (error, results, fields) {
        // When done with the connection, release it.
        connection.release();

        // Handle error after the release.
        if (error) callback(error);
        else callback(null, results[0].Album);

        // Don't use the connection here, it has been returned to the pool.
      });
    });
};

我现在要做的就是让这段代码运行并输出查询将返回的内容。我看过一些教程,人们似乎只需单击test并运行代码,但它一直要求我创建一个测试,我不确定我到底需要做什么来测试这个函数。
编辑:我意识到我上传的lambda代码中缺少了一个小改动,但是我现在在第10行得到一个错误,说有一个意外的标记>。
我不确定这里出了什么问题,因为我看的教程似乎有相同的东西。

yrwegjxp

yrwegjxp1#

因为您没有通过上下文传递任何参数,所以只需创建一个带有默认值的测试或一个空对象{},然后在控制台中单击test。它将调用你的lambda函数,就好像它是从你的移动应用程序调用的一样,你可以从那里进行调试。

相关问题