【问题标题】:Versioning resources files from Java webapp从 Java webapp 对资源文件进行版本控制
【发布时间】:2017-06-18 08:07:36
【问题描述】:

我的个人申请有问题。

每次上传新版本的It,我的用户都会遇到css、js和图片资源的问题。

我想做一些事情,在每个新版本(该项目包括 maven)上更改这些资源的 URL但仍缓存信息以获得页面加载时间。

但是我不知道我是否可以更改调用的URL并且不更改应用程序中资源的路径。是否存在任何解决方案,例如过滤器或 url 重写器? (比如/{version}/res/css/style.css)我找不到任何关于它的信息...

【问题讨论】:

    标签: java html css caching browser


    【解决方案1】:

    您可以在静态资源请求中添加查询参数 ?v={version}。

    RFC 3986 声明

    查询组件包含非分层数据,这些数据与路径组件中的数据一起用于标识 URI 方案和命名权限范围内的资源

    因此缓存时要考虑参数。

    大多数浏览器都会缓存它。也许有些代理服务器不会,现在大多数会。它不会发生的假设是基于 8 年前的发现,请参阅Steve Sounders's blog

    您可以修改文件名本身或路径。那是其他选择。

    【讨论】:

    • 我在某处看到带有参数的 url 没有被缓存...我不知道这是否是一个很好的解决方案:/
    • 是的,以前就是这样。我添加了更多背景
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    相关资源
    最近更新 更多