流星代码必须始终在光纤中运行。尝试使用Meteor.bindEnvironment包装传递给非Meteor库的回调

s.b*_*bar 1 meteor

我正在Meteor中调用AWS服务来获取imageId。成功获取后,imageId我想将其插入中Mongo.Collection,但是我的插入代码无法正常工作,并且出现以下错误:

错误:流星代码必须始终在光纤中运行。尝试使用Meteor.bindEnvironment包装传递给非Meteor库的回调。

这是我的代码:

var ec2 = new AWS.EC2();
var params = {
  DryRun: false,
  Owners: [
    '12345678'
  ]
};
ec2.describeImages(params, function(err, data) {
  if (err) { 
    console.log(err); // an error occurred
  } else {  
    var strData= JSON.stringify(data)

    var Images =  strData.Images
    var jsonData = JSON.parse(strData);

    var arrImages = jsonData.Images;

    var _ImageId=arrImages[0].ImageId;
    console.log("AMI IMAGE  is "+_ImageId)

    CreateInstense.insert({
      AMIIMAGE:_ImageId,
      InstenceId:"instanceId"
    });
  }
});  
Run Code Online (Sandbox Code Playgroud)

Sty*_*tyx 5

您应该完全按照错误指示进行操作:使用来包装回调Meteor.bindEnvironment

ec2.describeImages(params, Meteor.bindEnvironment(function (err, data) {
  // ...
}));
Run Code Online (Sandbox Code Playgroud)