代码之家  ›  专栏  ›  技术社区  ›  Tekk

反应本机:记录错误的响应

  •  0
  • Tekk  · 技术社区  · 7 年前


    我的代码如下所示:

    eturn fetch('myurl.com', {
            method: 'GET',
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
            },
        }).then((response) => response.json())
            .then((responseData) => {
                console.log(responseData); // This logs nothing
            }).catch((error) => {
                console.log("Error " + error); // This logs something
            });
    

    Error SyntaxError: JSON Parse error: Unrecognized token '<' . 我认为这是因为XDebug发送了一些错误消息,但我完全不知道可能出了什么问题。响应似乎以“<”开头,所以我认为这是一个html标记。

    1 回复  |  直到 7 年前
        1
  •  0
  •   blacksun    7 年前

    试试这个,确保url返回正确的json格式:

        fetch(url)
            .then(res => res.json())
            .then(res => {
                this.setState({
                    loading: false,
                    data: res.data
                }, () => {
                    console.log("log something")
                });
            })
            .catch(error => {
                console.log(error);
                this.setState({ loading:false, error });
            });