如何缓存javascript文件
你好,我正在尝试做一个浏览器缓存实验。 像这样如何缓存javascript文件,javascript,browser-cache,Javascript,Browser Cache,你好,我正在尝试做一个浏览器缓存实验。 像这样 <head> <script type="text/javascript" src='<%=Tool.GetFileRefUrl("js_cached.js")%>' ></script> <script type="text/javascript"> var lastFile = fun(); </script> <scr
<head>
<script type="text/javascript" src='<%=Tool.GetFileRefUrl("js_cached.js")%>' ></script>
<script type="text/javascript">
var lastFile = fun();
</script>
<script src="js_cached.js" type="text/javascript"></script>
<script type="text/javascript">
var cacheFile = fun();
</script>
</head><body>
<form>
<div>
The cache file is :<script type="text/javascript">
document.writeln(cacheFile);
</script>
<br />
The last file is :<script type="text/javascript">
document.writeln(lastFile);
</script>
</div>
</form>
</body>
Tool.GetFileRefUrl是
public class Tool
{
public static string GetFileRefUrl(string url)
{
var ticks = GetLastWriteTime(url);
var result = string.Format("{0}?v={1}", url, ticks);
return result;
}
private static long GetLastWriteTime(string fileName)
{
var lastWriteTime = File.GetLastWriteTime(HttpContext.Current.Server.MapPath(fileName));
return lastWriteTime.Ticks;
}
}
最后,我找到了一种缓存js文件的方法 是否将页面添加到浏览器选项卡标记链接?嗯,我不确定它在英语中是什么,就像我最喜欢的IE一样 打开链接,您将看到
The cache file is :A
The last file is :A
修改js文件,并通过标记链接打开新选项卡
The cache file is :A
The last file is :B
Tks Bergi提示:您需要在问题中包含fun函数,因为这就是您的问题所在……您的服务器如何处理v参数?请发布整个服务器响应,包括缓存头和内容。另外,您是如何重新加载页面的?我在问题中添加了fun和Tool.GetFileRefUrljs_cached.js。我通过按F5或复制url打开新的浏览器选项卡来重新加载页面。待答复
The cache file is :A
The last file is :B