React Native Axios.get返回的结果不新鲜

React Native Axios.get返回的结果不新鲜,ios,react-native,axios,Ios,React Native,Axios,我正在使用axios为我的React本机应用程序获取数据,我只有在iOS上遇到问题。我能够从我的服务器上很好地获取数据,但是如果我从我的API中更改任何数据,这些更改根本不会反映在iOS中,只有在我重新安装应用程序时,这些更改才会发生。我仍然无法确定是什么导致了这个问题。这只发生在iOS上,安卓运行得非常好 获取数据代码: axios.get('http://www.example.com/api') .then((response) => { // console.log(respo

我正在使用axios为我的React本机应用程序获取数据,我只有在iOS上遇到问题。我能够从我的服务器上很好地获取数据,但是如果我从我的API中更改任何数据,这些更改根本不会反映在iOS中,只有在我重新安装应用程序时,这些更改才会发生。我仍然无法确定是什么导致了这个问题。这只发生在iOS上,安卓运行得非常好

获取数据代码:

axios.get('http://www.example.com/api')
.then((response) => {
  // console.log(response);
  this.setState({ data: response.data, loading: false });
});
如果我遗漏了任何信息,请告诉我

如果已经有人问过这个问题,如果你能为我指出正确的方向,我将不胜感激


非常感谢你

我猜页面是从缓存中读取的,因此您会得到一个旧副本。 你需要做的是在链接中添加一个日期戳,以强制应用程序加载一个“新鲜”页面。 事情是这样的:

 axios.get('http://www.example.com/api?dt='+(new Date()).getTime())
.then((response) => {
     // console.log(response);
     this.setState({ data: response.data, loading: false });
});  

可以通过向标头添加标头:{'Cache-Control':'no Cache'}来解决此问题

axios.get('http://www.example.com/api',
  headers: {'Cache-Control': 'no-cache'})
.then((response) => {
  // console.log(response);
  this.setState({ data: response.data, loading: false });
});

非常感谢你!出于好奇,这个问题是否仅限于反应?我使用另一个框架构建应用程序,但没有遇到此问题。