Сохраните возвращаемое значение http-запроса в переменной - PullRequest
0 голосов
/ 26 мая 2020

Я пытаюсь получить данные с помощью HTTP-запроса и функции обратного вызова, но получаю значение undefined, когда пытаюсь распечатать переменную.

function httpGetAsync(theUrl, callback)
{
    var xmlHttp = new XMLHttpRequest();
    xmlHttp.onreadystatechange = function() { 
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
            callback(xmlHttp.responseText);
    }
    xmlHttp.open("GET", theUrl, true);
    xmlHttp.send(null);
}

var response;
httpGetAsync("https://localhost:44319/api/Food/Get",function(result){
    response = result;
})

console.log(response)

1 Ответ

1 голос
/ 26 мая 2020

Попробуйте поместить console.log(response) внутри обратного вызова. Прямо сейчас console.log вызывается до получения ответа http.

...