繁体   English   中英

IE 显示我的页面以前缓存的版本

[英]IE shows a previously cached version of my page

我的情况是这样的; 用户选择他们希望打印的报告列表,一旦他们 select 并单击 a 按钮,我将打开另一个页面,其中选择的报告准备好打印。 我正在使用 session 变量将报告从一页传递到另一页。

第一次尝试,它工作正常,第二次尝试,它打开报告 window 和之前选择的报告。 我必须刷新页面以确保它加载最新的选择。

有没有办法在每次使用时从 session 获取最新值? 或者有没有更好的方法来解决这个问题。 公开征求意见...

谢谢

C# Asp.net,IE&7 /IE 8

在进行更多检查之后,如果您检查 COMET,它可能会有所帮助。 这个想法是你可以在你的第二个页面中有代码,它将每隔几秒钟检查一次服务器是否有更新的值,如果它找到更新的值,它将自我刷新。

有 2 个很好的链接解释了实现。

第一个链接解释了什么是 COMET 以及它与 ASP.NET 的关系,第二个链接有一个使用聊天室的示例。 但是,我确信查询更新的代码将非常通用,并且可以应用于您的场景。

我还没有实现 COMET,所以我不确定它有多复杂,或者它是否易于实现到您的解决方案中。

也许开发 SO 应用程序的人能够为您解决此问题。 SO 对页面上的通知使用了一些实时功能,即:您正在编写答案,并且在您的客户端中弹出一条消息,让您知道其他人已经添加了答案并单击“此处”刷新.

最好使用 URL 参数。 因此,您可以查看参数的值。

正确的解决方法是正确设置 HTTP 响应上的缓存指令,以便在没有服务器验证的情况下不会重用缓存的响应。

当您未能指定缓存生命周期时,客户端必须“猜测”响应的有效时间,而浏览器的猜测可能不是您想要的。 请参阅http://blogs.msdn.com/b/ie/archive/2010/07/14/caching-improvements-in-internet-explorer-9.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM