@kirillleogky

Как обработать ошибку в асинхронном коде?

есть код:
export default async function getGeocoding(location) {
  let cityIp = 'Minsk';
  try {
    let newCoord = await fetch(`https://geocode-maps.yandex.ru/1.x/?format=json&lang=en_US&apikey=${GEOCODE_MAPS_YANDEX_TOKEN}&geocode=${location}`);
    newCoord = await newCoord.json();
    window.console.log(newCoord);
  } catch (e) {
    let newCoord = await fetch(`https://geocode-maps.yandex.ru/1.x/?format=json&lang=en_US&apikey=${GEOCODE_MAPS_YANDEX_TOKEN}&geocode=${cityIp}`);
    newCoord = await newCoord.json();
    window.console.log(newCoord);
  }
}




Подскажите как правильнее обрабатывать ошибки при запросе?
Только такой вариант как выше?
Или может что-то красивее есть?
Такой вариант не работает, пишет 'newCoord' is not defined
export default async function getGeocoding(location) {
  let cityIp = 'Minsk';
  try {
    let newCoord = await fetch(`https://geocode-maps.yandex.ru/1.x/?format=json&lang=en_US&apikey=${GEOCODE_MAPS_YANDEX_TOKEN}&geocode=${location}`);
  } catch (e) {
    let newCoord = await fetch(`https://geocode-maps.yandex.ru/1.x/?format=json&lang=en_US&apikey=${GEOCODE_MAPS_YANDEX_TOKEN}&geocode=${cityIp}`);
  }
    newCoord = await newCoord.json();
    window.console.log(newCoord);
}
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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