Перейти к содержанию
  • Лента
  • Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы
Свернуть
exlends
Категории
  1. Главная
  2. Категории
  3. Языки программирования
  4. JavaScript
  5. Почему у меня не работает асинхронная загрузка данных через fetch?

Почему у меня не работает асинхронная загрузка данных через fetch?

Запланировано Прикреплена Закрыта Перенесена JavaScript
5 Сообщения 5 Постеры 97 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • E Не в сети
    E Не в сети
    elvin
    написал в отредактировано
    #1

    Пишу небольшое приложение и пытаюсь подгрузить данные с JSON-файла через fetch(), но данные не отображаются. В консоли ошибок нет код вроде бы логичный, но console.log(data) внутри then() не срабатывает. Что я упускаю?

    async function loadData() {
      fetch('https://myapi.ru/posts/1')
        .then(response => response.json())
        .then(data => {
          console.log(data);
          document.getElementById('output').textContent = data.title;
        })
        .catch(error => {
          console.error('Ошибка загрузки:', error);
        });
    }
    
    loadData();
    
    console.log('Данные загружены!');
    

    Сразу скажу что файл точно доступен (проверял в браузере), CORS тоже не выдает проблем…

    1 ответ Последний ответ
    1
    • kirilljsxK Не в сети
      kirilljsxK Не в сети
      kirilljsx
      js
      написал в отредактировано
      #2

      Твоя функция loadData() не использует await, при этом явно не возвращает промис.
      Тебе либо полностью переписать функцию на async/await либо работать через .then()

      1 ответ Последний ответ
      0
      • Алекс44А Не в сети
        Алекс44А Не в сети
        Алекс44
        написал в отредактировано
        #3

        Брат, у тебя точно файл лежит в правильной директории? Проверь путь и если пишешь просто data.json, он должен быть в той же папке, что и твой HTML. И сервер локальный запущен? Без него fetch может не сработать из-за CORS.

        1 ответ Последний ответ
        0
        • WowkW Не в сети
          WowkW Не в сети
          Wowk
          написал в отредактировано
          #4

          Согласен. И ещё посмотри расширение файла — иногда в Windows скрывается .txt, даже если ты назвал data.json. Включи отображение расширений и перепроверь. У меня так было, два часа дебажил.

          1 ответ Последний ответ
          0
          • Игорь_ИИ Не в сети
            Игорь_ИИ Не в сети
            Игорь_И
            написал в отредактировано
            #5

            И не забудь проверить, что сервер возвращает правильный Content-Type: application/json. Иногда если файл отдаётся как text/plain, браузер не парсит его как JSON. Открой вкладку “Сеть” в DevTools и посмотри заголовки ответа.

            1 ответ Последний ответ
            0

            Категории

            • Главная
            • Новости
            • Фронтенд
            • Бекенд
            • Языки программирования

            Контакты

            • Сотрудничество
            • info@exlends.com
            • Наш чат
            • Наш ТГ канал

            © 2024 - 2025 ExLends, Inc. Все права защищены.

            Политика конфиденциальности
            • Войти

            • Нет учётной записи? Зарегистрироваться

            • Войдите или зарегистрируйтесь для поиска.
            • Первое сообщение
              Последнее сообщение
            0
            • Лента
            • Категории
            • Последние
            • Метки
            • Популярные
            • Пользователи
            • Группы