AWS Lambda函数错误-“提供时参数回调必须是一个函数”

时间:2020-06-06 23:56:39

标签: mysql node.js amazon-web-services aws-lambda aws-api-gateway

下面的带有2个参数的代码返回一个错误—“提供时,参数回调必须是一个函数”,但是当我使用1个参数运行相同的代码时,没有任何错误。

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) {
      // Use the connection
      connection.query('SELECT DISTINCT size FROM item_var JOIN item ON item_var.item_id = item.list_id WHERE item.name = ? ' +
      'AND container = ? ORDER BY size', event['item-container'], event['container-size'], function (error, results, fields) {
      // And done with the connection.
      connection.release();
      // Handle error after the release.
      if (error) callback(error) ;
      else callback(null, results);
    });
  });
};

我阅读了一些需要延迟第二个参数的文章,但是在某处找不到任何合适的示例代码。我听说过“ SetInterval”方法,但是我不知道该如何使用上面的代码。

这里的任何人都足够友好,可以给我一些提示,从哪里开始修复我的代码,或者至少提供一些示例。

0 个答案:

没有答案