在node.js代码中实现回调的问题

兰迪普

我有这个node.js函数process(),它应该在调用时返回一个值。我在为我的process()创建回调时遇到问题。该值仅应在从ec2.runInstances(params,function(err,data)调用)获得响应后才从process()返回。

-------------来自app.js(express.js)的代码段--------------------

var createEngine = require('./ec2_create.js');
app.get('/create', function (req, res) {
    res.render('create', {
        status: createEngine.process()
    });

});

------------------------来自ec2_create.js的代码段-------------------- ---

function process(callback) {

    var status = null;
    // Create the instance
    ec2.runInstances(params, function (err, data) {
        if (err) {
            //console.log("Could not create instance", err); 
            status = "Could not create instance: " + err;
        } else {
            var instanceId = data.Instances[0].InstanceId;
            //console.log("Created instance", instanceId);
            status = "Created instance: " + instanceId;
        }

    });
    callback(status);
};

module.exports.process = process;
希拉鲁丁·阿勒丁

尝试如下

function ec2process(callback){

var status = null;
// Create the instance
ec2.runInstances(params, function(err, data) {
if (err) { 
    //console.log("Could not create instance", err); 
    status = "Could not create instance: " + err;   
    }
else{
    var instanceId = data.Instances[0].InstanceId;
    //console.log("Created instance", instanceId);
    status = "Created instance: " + instanceId; 
  } 
callback(status); // Callback moved

});


};

出口。进程= ec2process

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

node.js代码中回调参数的含义

来自分类Dev

node.js代码中回调参数的含义

来自分类Dev

回调函数问题Node.js

来自分类Dev

Node.js中的回调顺序

来自分类Dev

如何通过在node.js中读取流来正确实现回调逻辑?

来自分类Dev

对如何在node.js中实现异步回调感到困惑

来自分类Dev

如何使用 async.js 简化 Node.js 中的回调代码

来自分类Dev

多个Node.js回调存在问题

来自分类Dev

如何在Node.js和Express.js中改进此代码,避免回调地狱

来自分类Dev

在Node.js中制作异步回调函数

来自分类Dev

使用Bluebird在Promise中包装Node.js回调

来自分类Dev

如何在回调函数Node JS中打破for循环

来自分类Dev

“调用堆栈”用于node.js中的回调

来自分类Dev

等待Node.js中的多个回调

来自分类Dev

Node.js中的成语成功回调

来自分类Dev

在Node.js回调中调用模块函数

来自分类Dev

node.js中的并行回调Universe?

来自分类Dev

API调用的异步并行与node.js中的回调

来自分类Dev

TypeError:回调不是Node.js中的函数

来自分类Dev

如何在回调函数Node JS中打破for循环

来自分类Dev

等待回调函数在Node.js中返回

来自分类Dev

Node.js中的成语成功回调

来自分类Dev

“调用堆栈”用于node.js中的回调

来自分类Dev

Node.js中的http.request超时回调

来自分类Dev

Node.js中的回调函数没有结果

来自分类Dev

Node.js中的多个mysql查询和回调

来自分类Dev

Node js中的回调函数是否以同步方式执行?

来自分类Dev

如何在node.js中执行回调函数?

来自分类Dev

小node.js示例中的回调队列顺序