React Native - 来自JSON Response的解析错误

时间:2017-06-01 05:40:09

标签: json reactjs parsing react-native

这是我的代码。

我正在调用以下函数来获取状态列表。

 callGetStatesApi()
 {
   callGetApi(GLOBAL.BASE_URL + GLOBAL.Get_States)
   .then((response) => {
           // Continue your code here...
           stateArray = result.data
           Alert.alert('Alert!', stateArray)
     });
 }

以下是常见的callGetApi函数,用于从GET Api获取响应。

export function callGetApi(urlStr, params) {
    return fetch(urlStr, {
            method: "GET",
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
            },
            body: JSON.stringify(params)
        })
        .then((response) => response.json())
        .then((responseData) => {
            result = responseData
        })
        .catch((error) => {
             console.error(error);
             Alert.alert('Alert Title failure' + JSON.stringify(error))
        });
} 

我收到以下错误。

enter image description here

1 个答案:

答案 0 :(得分:1)

警报仅显示字符串,但是您的情况" stateArray "是复杂的对象(数组,结构......)

所以使用stateArray.toString()或JSON.stringify(stateArray),

尝试以下方法并告诉我,

fetch(GLOBAL.BASE_URL + GLOBAL.Get_States, {
    method: 'get',
    headers: { 'Accept': 'application/json','Content-Type': 'application/json',}
}).then((response) => response.json())
.then((responseData) => {
    console.log(responseData) // this is the response from the server
    // Continue your code here...
       stateArray = result.data
       Alert.alert('Alert!', stateArray)
}).catch((error) => {
   console.log('Error');
});