[讨论]Web页面中JS/CSS版本的控制(顶都有分)

mychinabc 2011-11-04 10:03:06
相信做过Web的都遇到过当引用外部JS后,JS修改了其中一个function,并且服务器也上传了新的JS文件,但是客户端由于缓存的原因没有更新到最新的JS文件,所以问题就来了,我想了想有以下办法:

1. 让客户自己清缓存 ---- 不太现实,客户可没这么好心情,关键还有不会清缓存的人
2. 给引用JS的地方加上xxx.js?32848或是给JS改个名,修改引用,来让浏览器更新JS ---- 引用的地方多了,那就得人肉改啊改;
3. 使用用户控件,将JS调用统一调用放在里面,其它的只管引用,这样修改一个地方的JS就可以了。

--------------------------------------------
这里想看看各位的方法,也许有更好的方法,大虾们都来晒晒,一起学习一下
...全文
94 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
赳赳老陈 2011-11-14
  • 打赏
  • 举报
回复
我用的是版本号大法
mychinabc 2011-11-14
  • 打赏
  • 举报
回复
看来大家的方法都差不多啊,OK,散分
小童 2011-11-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 taomanman 的回复:]

修改后的css或者js直接替换掉,接下来最重要的一步是

修改比如说登录页面,在后台增加一个方法:

C# code

///
/// 清空浏览器客户端的缓存
///
public static void ClearClientPageCache()
{
HttpContext.Current.Response.Buffer=true;
HttpContext.Curr……
[/Quote]清理缓存试试
nxjj18 2011-11-04
  • 打赏
  • 举报
回复
写个方法清理缓存吗?
暖枫无敌 2011-11-04
  • 打赏
  • 举报
回复
修改后的css或者js直接替换掉,接下来最重要的一步是

修改比如说登录页面,在后台增加一个方法:


///
/// 清空浏览器客户端的缓存
///
public static void ClearClientPageCache()
{
HttpContext.Current.Response.Buffer=true;
HttpContext.Current.Response.Expires = 0;
HttpContext.Current.Response.ExpiresAbsolute=DateTime.Now.AddDays(-1);
HttpContext.Current.Response.AddHeader("pragma","no-cache");
HttpContext.Current.Response.AddHeader("cache-control","private");
HttpContext.Current.Response.CacheControl="no-cache";
}

然后将修改后的文件也替换上去试试吧。
zell419 2011-11-04
  • 打赏
  • 举报
回复
2楼的方法不错 。
ltcszk 2011-11-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 juliohuang 的回复:]

xxx.js?v=版本号。发布的时候升级下版本号
[/Quote]
+1

cui_win 2011-11-04
  • 打赏
  • 举报
回复
我是来帮顶的
黄亮 2011-11-04
  • 打赏
  • 举报
回复
现在一般都是这样做的
黄亮 2011-11-04
  • 打赏
  • 举报
回复
xxx.js?v=版本号。发布的时候升级下版本号
mychinabc 2011-11-04
  • 打赏
  • 举报
回复
自己顶一下
ijwsoft 2011-11-04
  • 打赏
  • 举报
回复
+
[Quote=引用 7 楼 taomanman 的回复:]
修改后的css或者js直接替换掉,接下来最重要的一步是

修改比如说登录页面,在后台增加一个方法:


C# code


///
/// 清空浏览器客户端的缓存
///
public static void ClearClientPageCache()
{
HttpContext.Current.Response.Buffer=true;
HttpCo……
[/Quote]

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧