@AlexNew22

Почему скрипт с неправильным url зависает и не отрабатывает ошибку?

const fakeUrl = 'https://api.github.co'

function getUser(url) {
	return new Promise((resolve, reject) => {
  	fetch(url).then(data => resolve(data.json())).catch(err => reject(err))
  })
}

const app = async () => {
	const result = await getUser(fakeUrl)
  console.log(result)
  console.log('end')
}

app()
  • Вопрос задан
  • 111 просмотров
Решения вопроса 2
@YahorDanchanka
Frontend developer
Потому что вы и не обрабатываете ошибку. Оберните вызов метода await getUser() в try catch.
const fakeUrl = 'https://api.github.co'

function getUser(url) {
  return new Promise((resolve, reject) => {
  	fetch(url).then(data => resolve(data.json())).catch(err => reject(err))
  })
}

const app = async () => {
  try {
  	const result = await getUser(fakeUrl)
  	console.log(result)
  } catch (error) {
  	console.log('error', error)
  }
  
  console.log('end')
}

app()
Ответ написан
HistoryART
@HistoryART
Надзиратель
await getUser(fakeUrl).then(console.log).catch(console.error);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы