空的响应数据用于提取调用

时间:2019-01-04 11:12:48

标签: react-native promise fetch

反应本机提取调用(es5)返回未定义的响应。这是我的提取调用的代码。

 body = {"username":"Gdgf","password":"dfgdfgdfg","remember":""}
    var promise = new Promise(function(resolve, reject) {
            fetch(`${FINAL_URL}users/login_app?app=1&submit=1`, {
                method: 'POST',
                headers: {
                    Accept: 'application/json',
                    'Content-Type': 'application/json',
                    // 'content-type': 'application/x-www-form-urlencoded',
                    // 'content-Type': 'multipart/form-data'
                },
                body: JSON.stringify(body),
            })
                .then(response => response.json())
                .then(responseData => console.log('responseData', responseData)) // console output is --> responseData []
                .catch(err => {
                    reject(err);
                });
        }); 

还附加了邮递员的脚本,以表明api在起作用。

POSTman for the same API call

2 个答案:

答案 0 :(得分:1)

在大多数情况下,如果您未正确拨打终点,就会出现此问题。如您在评论中所述,在${FINAL_URL}users/login_app?app=1&submit=1的控制台日志中,您错过了www,这使得响应不确定。如果仍有问题,请从提取中删除new Promise部分。

希望我能帮上忙。

答案 1 :(得分:-1)

您可以尝试更改以下行吗?

then(responseData => console.log('responseData', responseData))

then(responseData => console.log('responseData', JSON.stringify(responseData)))

现在控制台输出是什么?