如果我更改路线,提取请求将停止工作

时间:2018-10-25 18:22:37

标签: reactjs react-router fetch

当我在提取组件时使用this.props.history.push("/");更改路由时,下一条路由未正确发出提取请求,并给出了 Unexpected token < in JSON at position 0如何解决这个问题的任何提示? 获取示例:

const data = {
      name: "generateToken",
      param: {
        email: "email",
        pass: "apikey"
      }
    };
    return fetch("http://localhost/streamingapp/api/", {
      method: "post",
      headers: {
        Accept: "application/json",
        "Content-Type": "application/json"
      },
      body: JSON.stringify(data)
    })
      .then(res => {
        return res.json();
      })
      .then(content => {
        if (content.response.status === 200) {
          this.setState({
            apiToken: content.response.result.token
          });
        }
      })
      .catch(error => {
        console.error(error);
      });

1 个答案:

答案 0 :(得分:0)

如果有人想知道解决方案,则api上的问题使响应变为html。为了解决这个问题,我只是实现了一个abortController来取消获取请求:

[77.26, 94.06, 0.71, 0.29]