Выборка Java-скрипта возвращает 200, но нет данных

У меня есть требование отображать все страны мира в раскрывающемся списке. Итак, я нашел эту конечную точку api КОНЕЧНАЯ ТОЧКА ССЫЛКИ. Когда я копирую и вставляю эту ссылку на конечную точку в своем веб-браузере, я получаю ответ со всеми данными. (страны);

Когда я пытаюсь встроить это в project.

getCountries() {
      try {
       
        fetch(`https://restcountries.eu/rest/v1/all`).then(data =>
          console.info(data)
        );
        
      } catch (error) {
        console.info("HERE ERROR COMES", error);
      }
    }

Он переходит в затем блок метода выборки. Но дает мне результат Выборка Java-скрипта возвращает 200, но нет данных

Здесь нет ничего, что называется данными. Даже я получаю успешный ответ. Почему это могло произойти? Это связано с ошибками cors?

Что в body?

Evan Knowles 13.09.2018 13:45

Вы смотрели response.body? Вы пробовали response.json()? Имеется ли в ответе правильный тип данных? Прочтите спецификации API выборки, чтобы узнать, какой метод ответа подходит для того, что вам вернул сервер restcountries. То, что вы называете data, является объектом ответа. Вы должны обработать этот ответ в соответствии с тем, что вы получаете, и самостоятельно создать реальный объект данных.

Shilly 13.09.2018 13:47

Кроме того, этот try...catch не справится со своей задачей;)

Papi 13.09.2018 13:51

Я думаю, что проблема была в отличие от axios, вы не можете напрямую получить доступ к данным ответа в методе выборки. Вам нужно преобразовать его в json, а затем получить к нему доступ. Я отметил ответ, и это сработало для меня. =) Всем спасибо, ребята.

Pathum Kalhan 14.09.2018 05:10
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
3
4
2 917
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

response.type 'cors', вероятно, означает запрос Cross Origin - и его блокирование - попробуйте найти другой api

Ответ принят как подходящий

Вы можете использовать следующее:

let url = 'https://restcountries.eu/rest/v1/all';

fetch(url)
.then(res => res.json())
.then((data) => {
  console.info(data);
})
.catch(err => { throw err });

Это работает для меня

function getCountries(){
  fetch("https://api.printful.com/countries ")
  .then((resp) => resp.json()) // Transform the data into json
  .then(function(data) {
     let countries = data.result;
     return countries.map(function(country){
        console.info(country.name);
        //Create your list here
     });
    });
}

Другие вопросы по теме