综合技术

node.js – 使用nodejs async和请求模块

微信扫一扫,分享到朋友圈

node.js – 使用nodejs async和请求模块
0

我正在尝试一起使用异步和请求模块,但我不明白回调是如何传递的.我的代码是

var fetch = function(file, cb) {
    return request(file, cb);
};

async.map(['file1', 'file2', 'file3'], fetch, function(err, resp, body) {
    // is this function passed as an argument to _fetch_ 
    // or is it excecuted as a callback at the end of all the request?
    // if so how do i pass a callback to the _fetch_ function
    if(!err) console.log(body);
});

我正在尝试按顺序获取3个文件并连接结果.我的头脑陷入了我试过的回调和我能想到的不同组合.谷歌帮助不大.

请求是异步函数,它不会返回一些东西,当它的工作完成时,它会回调.从 request examples
开始,您应该执行以下操作:

var fetch = function(file,cb){
     request.get(file, function(err,response,body){
           if ( err){
                 cb(err);
           } else {
                 cb(null, body); // First param indicates error, null=> no error
           }
     });
}
async.map(["file1", "file2", "file3"], fetch, function(err, results){
    if ( err){
       // either file1, file2 or file3 has raised an error, so you should not use results and handle the error
    } else {
       // results[0] -> "file1" body
       // results[1] -> "file2" body
       // results[2] -> "file3" body
    }
});

翻译自:https://stackoverflow.com/questions/11062995/using-nodejs-async-and-request-module

阅读原文...


代码日志

安全代币发行:一种符合美国SEC的不完整指导方式?

上一篇

如何在代码中设置android:layout_weight和android:layout_width?

下一篇

您也可能喜欢

评论已经被关闭。

插入图片
node.js – 使用nodejs async和请求模块

长按储存图像,分享给朋友