小编The*_*ack的帖子

如何从AWS Lambda node.js异步函数返回数据?

我正在研究一些托管在AWS Lambda服务上的脚本.我之所以选择Node.js,是因为我对JS没用,但我还没学过Python或Java.然而,它被证明是一场噩梦,因为我需要查询一个MySQL数据库而我无法弄清楚如何正确地从函数中获取结果.

所以基本上我有这样的东西(我已经削减了一些东西,但你应该得到这个想法),这就是我想要做的.我想能够查询MySQL数据库,当它有答案时,只需返回它,或者如果有错误则抛出.

var mysql = require("mysql");     //npm installed module "mysql"
var err = require("./errors.js"); //internally requires npm installed module "errors"

var main = function(event, context, callback){
  try{
    //Confidential
    var data = null;
    //Confidential
    try{
      data = databaseCommand("SELECT * FROM `<table>` WHERE <field> = <value>");
    }
    catch(e){
      if(e instanceof err.Database)
        //Return state that indicates "Internal server error".
      else
        throw e;
      return
    }
    //Do maths on data
    //Return "OK" and result
  }
  catch(e){
    //Return "Unkown error"
  }
};
var databaseCommand = …
Run Code Online (Sandbox Code Playgroud)

javascript asynchronous callback node.js aws-lambda

1
推荐指数
1
解决办法
5414
查看次数

标签 统计

asynchronous ×1

aws-lambda ×1

callback ×1

javascript ×1

node.js ×1