2017-09-22 102 views
0

如何在提取语句中记录错误响应?
我的代码看起来是这样的:React Native:记录错误响应

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

用于调试删除'。然后((响应)=> response.json())'部分,调试完毕后把它带回来 – Cherniv

回答

0

试试这个,并确保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 }); 
     }); 
+0

这是我的问题。我不想看到什么**完全**网址返回,因为我无法找到任何问题,同时在url后面调试我的PHP代码。随着你的代码,我得到完全相同的错误。 '错误SyntaxError:JSON解析错误:无法识别的标记'<'' – Tekk

+0

那么这意味着你的网址不会返回json。删除第一行,然后再试一次?并使用data:res而不是data:res.data。如果你确定你的url返回json然后保持第一个.then行,只是做console.log(res) – blacksun

+0

我非常确定,url不会返回正确的json格式。请提供网址,以便我们提供帮助。 – blacksun

相关问题