Dan*_*nny 3 html caching google-chrome browser-cache google-chrome-app
我有一个用于测试智能电视网络应用程序的模拟器.模拟器本身是一个Web应用程序,具有显示电视和远程的简单界面,并在iframe中加载正在测试的Web应用程序.用户从命令行启动模拟器,启动两个简单的HTTP服务器(一个用于模拟器,一个用于正在测试的Web应用程序),然后使用指向模拟器的--app命令行开关启动chrome.
问题是Chrome每次启动时都会加载Web应用的缓存版本.如果您自上次启动以来对Web应用程序进行了更改,则在您对页面进行硬刷新之前,它们不会显示.
为了解决这个问题,我尝试了以下方法:
--app=http://localhost:6001/?random={some_hash})然而,这些似乎都没有.模拟器代码似乎没有被缓存,因为iframe中的src URL确实每次都会附加一个新的随机值.但是,iframe中加载的页面是旧的,并且在初始启动后始终需要刷新.
我可以尝试的其他任何我没有涉及的内容吗?
进一步的问题示例:
在这种情况下,模拟器将启动并仍然显示Web应用程序1.它继续通过刷新显示Web应用程序1,直到用户执行硬刷新(cmd + shift + r),此时Web应用程序2最终显示.
听起来这可能与此处的错误相关:https: //code.google.com/p/chromium/issues/detail?id = 324102
作为一种解决方法,我发现从javascript设置iframe src ALONG将随机查询参数附加到URL似乎可以解决问题.简单地做一个或另一个不起作用.
例:
// still loads stale page
document.getElementById('tv-screen').src = 'http://localhost:6001/';
// will load fresh page
document.getElementById('tv-screen').src = 'http://localhost:6001/?rand=' + Math.round(Math.random() * 10000000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13090 次 |
| 最近记录: |