Javascript 如果api无法返回搜索,是否可以显示错误?

Javascript 如果api无法返回搜索,是否可以显示错误?,javascript,api,Javascript,Api,因此,我正在为NBA球员建立一个球员跟踪系统,如果有人拼错了球员的名字,或者键入了api无法获取的随机内容,我怎么能提醒他们呢 function getResults (query) { fetch(`https://www.balldontlie.io/api/v1/players?search=${searchbox.value}`) .then(player =>{ return player.json() }

因此,我正在为NBA球员建立一个球员跟踪系统,如果有人拼错了球员的名字,或者键入了api无法获取的随机内容,我怎么能提醒他们呢

 function getResults (query) {
        fetch(`https://www.balldontlie.io/api/v1/players?search=${searchbox.value}`)
        .then(player =>{
            return player.json()
        }) .then(displayResults);
    };

    function displayResults(player){
        playerName.innerHTML = player.data[0].first_name;
        playerLastName.innerHTML = player.data[0].last_name;
        teamName.innerHTML = player.data[0].team.full_name;
        playerPos.innerHTML = player.data[0].position;
    }

如果请求实际抛出错误,可以使用
.catch()
在抛出错误之前捕获错误,如下所示:

函数getResults(查询){
取回(`https://www.balldontlie.io/api/v1/players?search=${searchbox.value}`)
.然后(玩家=>{
return player.json()
})
。然后(显示结果)
.catch(显示错误);
};
函数显示错误(错误){
//在UI中分析并显示错误
}
但是,如果请求格式正确且API可用,则
fetch()
仍会给出响应而不会引发错误。在这种情况下,您可以在
中检查响应的状态。然后()

函数getResults(查询){
取回(`https://www.balldontlie.io/api/v1/players?search=${searchbox.value}`)
。然后(响应=>{
if(response.ok){
返回response.json()
}
//如果'response.ok'为'false',您可以获取状态代码以了解更多有关原因的信息,或者API可能会在正文中发送错误消息:
console.log(response.status)//检查http://httpstatuses.com/ 有关不同状态的更多信息,请参见
response.json()
})
。然后(显示结果)
.catch(显示错误);
};

catch
中抛出错误消息