node.js - 为什么 axios fetch 在移动设备上不起作用?
问题描述
我有以下设置,它可以在我的 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 钩子,它在 componentDidMount 上的 PC 上工作,但如果我多次重新加载页面就不起作用,但我希望它在每次重新加载页面时都能工作,但它不获取......这可能是因为我使用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);
});
},[]);
解决方案
推荐阅读
- javascript - 将 mapbox-gl 与 requireJS 一起使用:self.XMLHttpRequest 不是构造函数
- python - 迭代时获得大量重复值
- swift - 声明一个只能包含 ASCII 字符的 Swift Character 类型?
- ruby-on-rails - 如何使用 ActiveRecord 重写此 sql?
- go - 如何修复工作池死锁
- javascript - 仅在选中复选框时发送 POST 请求
- php - 在 Woocommerce 中显示当前子类别的子类别
- swift - 如何在 iOS swift 4 中访问 Magento Rest API
- laravel - laravel 通知未定义索引:user_id
- migration - Keycloak 迁移散列密码