如何在节点js中同步运行异步函数

时间:2016-06-19 10:07:06

标签: node.js express asynchronous

我正在使用Express框架。

我面临的问题是我创建了一个var持续时间,当收到'/'请求时,它只是找到给定视频的总持续时间并保存到该变量但最后我想显示该变量但不显示该变量值,而是显示任何内容,并在控制台中显示未定义...

任何人都可以请帮助我同步调整此代码而不是异步...

非常感谢

This is my code

1 个答案:

答案 0 :(得分:1)

处理你需要输入的异步代码

console.log(duration);
res.send(duration);

exec的回调中。

修改后的代码:

var duration;
app.get('/', function(req, res){
    exec('ffprobe -1 ***', function(){
        if(stdout){
            duration = stdout;
            console.log(duration);
            res.send(duration);
        }
    });
});