在axios中链接请求,因此我可以对第一个请求的每个元素执行第二个请求

时间:2020-05-06 19:55:29

标签: javascript reactjs react-native axios httprequest

我需要从一个端点获取一个朋友列表,然后为从第一个端点获取的每个朋友从一个不同的端点获取一个号码。我找到了如何链接axios请求的方法,但只能一个接一个地执行一个请求,我想循环执行一次,完美地将它添加到我从第一个请求获得的列表中的每个对象中。我发现的并且可能有用的是使用await,所以我有了这个:

async componentDidMount() {
    const friendslist = await Promise.all(axios.get(`users/${global.userID}/friends`));
    console.log(friendslist.data);
    function myFun(item){
        const data = await axios.get(`users/${global.userID}/sum/${item.id}`);
        return data.sum;
    }
    friendslist.forEach(item.sum = myFun);
    this.setState({loading: false, friends: friendslist.data})
};

但是我什至没有收到我的第一个请求,控制台显示未定义。抱歉,问题已经在这里,但我还没有找到类似的答案,或者我的解释不好-这是我的第一个问题。如果有帮助,后端在Django中,但我认为它不会改变任何内容。

0 个答案:

没有答案