undefined不是重构后的函数

时间:2015-06-08 16:03:33

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

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

.....
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()才能在Amazon上执行Lambda函数。 http://docs.aws.amazon.com/lambda/latest/dg/programming-model.html感谢

0 个答案:

没有答案