回调请求的问题

时间:2018-02-07 13:08:55

标签: javascript jquery node.js callback request

在这种情况下,我如何使用回调?我不确定自己做错了什么,我已经看过解释,仍然无法理解这个概念。

这是一个片段:

function retrieveTransactionInfo(transactionUrl) {
    request(transactionUrl, function (error, response, body) {
        // Parse JSON here
        // Set variables accordingly
        console.log('1');
    });
}

function getTransactionInfo(data, callback) {
    callback(data);
}


$('#search-btn').click(function() {

    getTransactionInfo(transactionUrl, retrieveTransactionInfo);
    console.log('2');

它正在做的是运行控制台日志' 2'首先代替' 1'。如何让它转到1然后2?或者我应该将我的代码结构完全不同?

1 个答案:

答案 0 :(得分:0)

日志' 2'首先是正确的,因为get请求是异步完成的。换句话说,getTransactionInfo立即返回,引擎执行下一行。

稍后,当异步请求结束时,将调用回调,并且' 1'输出完成。如果您的API执行异步请求,则无法执行其他操作。