已定义URL但仍未获取未定义协议的错误

时间:2018-05-25 07:16:31

标签: javascript reactjs axios

我正在尝试使用axios发出GET请求并获取错误

  

无法读取属性'协议'未定义的

此API端点为http://gateway.apps.test-digital.co.za/api/content/movies,工作正常。我们在电影的后端更改了它的最后一部分'去电影'并且在前端做了同样的事情,现在它打破了前面提到的错误信息。

我看过这些资源

  1. TypeError: Cannot read property 'protocol' of undefined
  2. Uncaught (in promise) TypeError: Cannot read property 'protocol' of undefined
  3. Cannot read property 'protocol' of undefined : axios react
  4. 关于import axios报错Cannot read property ‘protocol’ of undefined
  5. 他们都没有解决我的问题。原因是,所有这些问题都是由于传递给axios GET方法的url未定义的事实引起的,而在我的实例中并非如此。当我在调度axios调用之前正确记录URL时,它会显示正确的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

    问题

    1. 这里可能出现什么问题?
    2. 我该如何解决?

0 个答案:

没有答案