CNode

请问Express中如何实现给静态文件的地址加上随文件内容变化的版本号?

Iibigbug发布于13 年前最后回复13 年前7 回复7446 浏览0 收藏

比如/public/css/site.css?v=a_random_string 每次修改静态文件,a_random_string都会发生变化,防止本地调试的时候出现缓存,影响效果。

查看回复

回复 (7)

S
sumory#1·13 年前

hash一下,md5

I
ibigbug#2·13 年前
引用 sumoryhash一下,md5

在Express里面一般大家如何实现呢,Middleware?

S
sumory#3·13 年前
引用 sumoryhash一下,md5

@ibigbug 我觉得你可以这样,针对会改的静态文件,可以统一加?v=${version},然后每次上线或者更改了静态文件时修改这个version,没必要单独针对某些静态文件做这个吧. 你要是实在想要这个的话,随你怎么做都可以啊

I
ibigbug#4·13 年前
引用 sumoryhash一下,md5

@sumory 因为有的框架里面会有类似 static_url('/static/path/to/some.css') 这样的全局方法在模板里面直接用,我觉得挺好。不知想要在express里面该如何优雅的实现这种方法?

W
wengqianshan#5·13 年前

可以用grunt-rev: https://github.com/cbas/grunt-rev

D
dengqiao#6·13 年前
引用 sumoryhash一下,md5

@sumory 呵呵就是这样做的,最好把要用的css,js到底单独的模版文件中,改动的时候只需要改一个地方

I
ibigbug#7·13 年前
参与回复
登录后即可参与回复。登录