我有一个 React Native 应用程序,可以从我的服务器获取文件。当我更改服务器上的文件时,应用程序仍然显示旧数据。我正在用 expo 进行调试。
我有:
使用 ipconfig 清除 DNS 缓存
清除了我服务器上的缓存
重启手机
将以下内容添加到我的获取中:
const response = await fetch(fileName, {
headers: { "Cache-Control": "no-cache" },
将以下内容添加到我的获取中:
const response = await fetch(fileName, {
headers: { "Cache-Control": "no-store" },
二手
"expo start -c"
我仍然得到旧数据。当我在服务器和应用程序中重命名该文件时,会出现新数据。
尝试使用 重置缓存标志运行或重新启动 Metro 包。
npm start --reset-cache
yarn start --reset-cache
有点管用。如果我一个人做这件事。它不起作用。然后我将清除缓存添加到获取的标头中,它确实起作用了。然后我把清除缓存拿出来并更改服务器上的文件,但它不起作用。所以看起来,除非有人有更好的解决方案,否则我需要做这两件事来清除缓存。
谢谢 - 你让我走得更远,但我被困住了。
1) 添加以获取标头:{ '缓存控制': '无缓存', 'Pragma': '无缓存', ‘过期’:‘0’, }
删除 S3 文件夹也有同样的问题,这有帮助。