在 UIWebView 中使用 history.back() 但加载的前页包含非常旧的数据
Posted
技术标签:
【中文标题】在 UIWebView 中使用 history.back() 但加载的前页包含非常旧的数据【英文标题】:Using history.back() in UIWebView but loaded pre page contains very old data 【发布时间】:2015-08-17 09:31:54 【问题描述】:ios 8.0+
我的应用使用 UIWebview 访问论坛站点。 论坛首页包含两个标签:默认一个是“推荐”,另一个是“最新”。使用ajax加载post数据当用户切换到'Newest'标签时,页面同时运行以下代码保存状态:
window.history.pushState(null, title, url);
之后,如果用户对某个帖子感兴趣,他/她会单击链接并跳转到新页面以查看帖子的详细信息。在此页面中,我使用以下代码让用户有办法返回“最新”:
history.back(-1);
现在有趣的事情发生了,回到“最新”标签,但帖子数据是旧的。
经过一些测试,我发现数据总是在安装应用程序后第一次加载。此错误不会在 Safari 或 android 应用程序中发生。
我相信它应该与webView缓存有一些关系。但是为什么UIWebview不使用新的缓存呢?以及如何 解决这个问题?
【问题讨论】:
【参考方案1】:哦不...没有人遇到这个问题?
我目前的解决方案是: 返回时使用js代码自动刷新页面。
【讨论】:
以上是关于在 UIWebView 中使用 history.back() 但加载的前页包含非常旧的数据的主要内容,如果未能解决你的问题,请参考以下文章
如何在 UIWebView 中使用 Facebook 评论插件
在 UIScrollView 中使用多个 UIWebView