节点功能在循环中同步

时间:2018-05-22 06:59:30

标签: javascript node.js loops npm

寻找一种在循环中使节点功能同步的方法 例如:

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);

所需的响应顺序应该是 发布请求:: obj - &gt;&gt;响应 - &gt;&gt;计数 - &gt;&gt;功能结束

实际响应都是异步的 并且计数总是3

  

节点是否有某种方法使函数全部同步

0 个答案:

没有答案