javascript - 节点函数在循环中同步
问题描述
寻找一种使节点函数在循环内同步的方法,例如:
var abc = (count) => {
for (var i = 0; i < count; i++) {
var data = { "userName": "admin@xyz.com", "password": "xyz123#" };
sendPost(data, function (err, data) {
if (err) {
console.log(err);
}
else {
console.log(data);
}
console.log("sequence " + i);
});
}
console.log("end of function");
}
var sendPost = function (data, callback) {
console.log("post request :: " + JSON.stringify(data));
var formData = JSON.stringify(data);
var contentLength = formData.length;
request({
headers: {
'Content-Type': 'application/json'
},
uri: "https://someurl/Login",
body: formData,
method: 'POST'
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
callback(null, body);
} else {
console.log(error);
callback(error);
}
})
}
abc(3);
所需的响应顺序应该是 post request :: obj -->>response -->>count -->>end of function
实际响应都是异步的,计数始终为 3
节点是否有某种方法可以使功能全部同步
解决方案
推荐阅读
- python - 如何在 python 中使用 selenium 查找元素
- r - 如何将每个数据点颜色填充到 R 中的相应主题?
- vba - 我怎样才能检查一个整数,以便如果我再次运行代码它不会检测到该值?
- python - Django - URL 的反向解析抛出“NoReverseMatch”
- javascript - 在 IE 或 Edge 中支持 Canvas “下载为图像”
- python - 将 pandas 数据框操作为所需的输出
- ruby-on-rails - 如何在不安装 Linux 子系统的情况下在 Windows 10 上运行“rails credentials:edit”
- c - 在链表中创建数据类型为“struct”的新节点
- sql-server - 使用左连接而不是联合
- list - 我如何称呼一个也支持提升的幺半群?