Я пытаюсь написать общую функцию getData()
, которую я могу вызывать с разными URL-адресами, и предпринимаю разные действия, когда данные возвращаются с сервера.
function getData(url){
console.log("loading: " + url)
return fetch(url)
.then((response) => {
console.log("received response")
console.log(response.status)
if(response.status >= 200 && response.status < 300) {
console.log("url returned data...")
return response.json()
} else {
console.log("url did not return data...")
throw new Error("The url did not return data")
}
})
.catch((err) => {return err})
}
getData("notexisting.json")
.then(data => console.log("success!!"))
.catch(err => console.log("error!!"))
Проблема в том, что этот фрагмент кода не показывает ошибок, даже если URL не существует. Кроме того, два console.logs
внутри операторов if
никогда не достигаются, и функция getData()
всегда успешна ... даже если есть ошибка ...