1

我将代码放入不同的模块中:

.....
var util = require('util');
var s3 = new AWS.S3();

exports.perform_flatten = function(event, context) {
     .......
     CONTEXT = context;

   s3_helper.get_object(SRC_BUCKET, SRC_KEY, this.flatten);
};

this.flatten 是对同一文件中模块的回调

exports.flatten = function(data){
    .......

 s3.putObject({Bucket: dst_bucket, Key: dst_key, Body: buffer}, function(err, data) {
    if (err){
      console.log(err, err.stack); // an error occurred
    }else{
      console.log(data);           // successful response
      CONTEXT.done();
    }
  });
}

代码运行完美,直到到达这一行CONTEXT.done();

然后我得到错误:undefined is not a function

我不懂为什么?特别是因为我相信我将 CONTEXT 声明为全球性的权利?

我必须打电话context.done()才能在亚马逊上执行 Lambda 函数。http://docs.aws.amazon.com/lambda/latest/dg/programming-model.html谢谢

4

0 回答 0