异步函数只返回未决的承诺

时间:2021-02-15 09:03:28

标签: javascript asynchronous async-await promise

我正在编写一个简短的函数,从 PHP 文件中获取数据,该函数如下所示:

async function getData(uri) {
    let promise = new Promise((resolve, reject) => {
        var xhttp;
        xhttp = new XMLHttpRequest();
        xhttp.onreadystatechange = function(){
            if(this.readyState == 4 && this.status == 200){
                resolve(this.ResponseText);
            }
        }
        xhttp.open("GET", "https://coolwebsite.com/game/actions/" + uri)
        xhttp.send();
    })
    let result = await promise;
    return result;
}

但是,当我尝试获取数据并将其输出到控制台日志中时,它返回一个未决的承诺。

Promise { <state>: "pending" }

你能帮我找出我在代码中的错误,输出真正的值吗? 谢谢!

0 个答案:

没有答案