为什么axios fetch无法在移动设备上运行?

时间:2020-04-27 01:29:35

标签: node.js reactjs axios mongodb-atlas

我有以下设置可以在我的PC上使用,但即使有要提取的数据也不能在移动设备上使用。

useEffect(() => {
    const {username, room} = queryString.parse(location.search);
    setRoom(room);

    if (messages.length > 3) {
        let lastMessage = messages.pop();
        setMessss([lastMessage]);
        const fetchHistory = async () => {
            try {
                const result = await axios.get(`https://example.com/messages/${room}`,);
                setMessss(result.data.messagesFromAPI);
            } catch (error) {
                console.log(error);
            }
        };
        fetchHistory();
    }
}, [messages]);

我还有另一个useEffect钩子,该钩子可在PC上的componentDidMount上运行,但是如果我多次重新加载页面,则不起作用,但是我希望它在每次重新加载页面时都起作用,但是无法获取... 可能是因为我在Mongodb Atlas上使用了免费订阅(M0)吗?尽管从指标来看,我的数据库还没有耗尽或达到容量。

useEffect(() => {

    const {username, room} = queryString.parse(location.search);
    // setRoom(room);

    axios.get(`https://example.com/messages/${room}`)
    .then(response => {
        const history = response.data.messagesFromAPI;
        setMessss(history);
    })
    .catch(error => {
        console.log(error.response);
    });
},[]);

0 个答案:

没有答案
相关问题