Я пытаюсь сделать GET-запрос, используя axios и получаю ошибку
Невозможно прочитать свойство 'protocol' undefined
Эта конечная точка API была http://gateway.apps.test-digital.co.za/api/content/movies
и работал нормально.Мы изменили последнюю часть в back-end с 'movies' на 'movie' и сделали то же самое в front-end, и теперь она ломается с вышеупомянутым сообщением об ошибке.
Я посмотрелна этих ресурсах
- Ошибка типа: невозможно прочитать свойство 'protocol' из неопределенного
- Невозможно (в обещании) Ошибка типа: не удалось прочитать свойство 'protocol'undefined
- Невозможно прочитать свойство 'protocol' undefined: axios реагирует
- 关于 import axios 报错 Невозможно прочитать свойство 'protocol' undefined
И никто из них не решил мою проблему.Причина в том, что все эти проблемы были вызваны тем фактом, что URL, переданный методу GET axios, не был определен, что не так в моем случае.Когда я записываю URL-адрес прямо перед отправкой вызова axios, он отображает правильный URL-адрес.
Если я изменю во внешнем интерфейсе последнюю часть конечной точки с «фильма» на «фильмы» (от того, что на самом деле есть в бэкэнде до того, что было) я получаю 404
, что ожидается, потому что конечная точка изменилась с «фильмы» на «фильм», но когда я снова переключаюсь на «фильм» (что это на самом делев конце) я получаю ошибку, упомянутую выше.
Вот код, выполняющий запрос
function getMovies() {
const url = movieContentUrls.getMovieUrl();
console.log("The url: ", url) //This logs the correct url to where the movies sit
return axios
.get(url)
.then(response => response.data)
.catch(error => {
console.error('ERROR: ', error.message);
return null;
});
}
Функция getMovieUrl
определена в объекте, подобном этому:
getMovieUrl: () => `${moviesApiBaseUrl}/content/movie`
И вкладка сети:
![enter image description here](https://i.stack.imgur.com/QCZ8s.png)
Вопросы
- Чтоможет быть не так здесь?
- Как это исправить?