在Node.js中的同步请求
- 论坛
- 在Node.js中的同步请求
11 浏览
在Node.js中的同步请求
如何让Node.js中的'request'模块以同步方式加载内容?我看到的最好的建议是通过使用回调函数,让函数在完成加载资源之前不返回自身。我试图在代码中内联使用'request'函数(需要根据该数据处理一些不能放在回调函数中的事务)。
那么我该如何使用'request'模块的回调函数,以防止其在加载资源完成之前返回自身呢?
我正在运行一个循环,从API下载两个值,然后根据这些值进行一些数学运算。虽然这些数学运算可以在回调函数中完成...但是循环将在没有执行下一个操作所需的值的情况下继续进行(因此,阻止循环在数据准备好之前继续前进将解决这个问题)。
/* 循环 */ { /* URL生成 */ request({url: base + u_ext}, function(err, res, body) { var split1 = body.split("\n"); var split2 = split1[1].split(", "); ucomp = split2[1]; }); request({url: base + v_ext}, function(err, res, body) { var split1 = body.split("\n"); var split2 = split1[1].split(", "); vcomp = split2[1]; }); /* 需要在函数获取变量之后、循环继续之前进行数学运算 */ }