如何以异步方式使用函数中的值?

时间:2019-02-21 09:39:18

标签: javascript node.js async-await

我有一个文件“ test.js”,其中有一个函数使用“请求”模块从URL获取响应。我从另一个文件“ run.js”调用此函数,我先在其中存储返回值,然后将其打印出来。我得到“未定义”作为输出,我无法应用异步/等待使其工作。如何使console.log(res)等待makeRequest()调用返回值?

test.js-

const request = require("request");

function makeRequest(url){
    request(url, (error, response, html) => {
        if(!error && response.statusCode == 200) {

            return html;

        } else { 
            console.log(error);
        }
    });
}

module.exports = makeRequest;

run.js-

const makeRequest = require("./test");

async function getResult(){
    var res = await makeRequest("https://www.google.com");
    console.log(res);
}

0 个答案:

没有答案