[发明专利]一种静态资源版本号的生成方法和装置在审
申请号: | 201810189831.6 | 申请日: | 2018-03-08 |
公开(公告)号: | CN110244975A | 公开(公告)日: | 2019-09-17 |
发明(设计)人: | 魏养锋 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/65 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 张一军;李阳 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 静态资源 获取请求 方法和装置 计算机技术领域 引用 时间替换 解析 拦截 | ||
本发明公开了一种静态资源版本号的生成方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:接收静态资源的获取请求,拦截并解析所述获取请求,获取静态资源引用路径,以确定所述静态资源引用路径下的本地静态资源;获取所述本地静态资源的最近修改时间,以所述本地静态资源的最近修改时间替换所述获取请求中静态资源的版本号。该实施方式能够解决无法方便地生成静态资源版本号的问题。
技术领域
本发明涉及计算机技术领域,尤其涉及一种静态资源版本号的生成方法和装置。
背景技术
为了性能考虑,目前大多数前端系统都会做静态资源缓存处理。但当静态资源内容发生改变时,浏览器却不能自动更新缓存。为解决此问题,常用方式是在引入静态资源时,在静态资源引用路径后面增加版本号,每次修改静态文件内容后,引入此文件的地方(即静态资源引用路径)都需要修改具体版本号。目前主要通过两种方式修改静态资源的版本号:手动修改静态资源版本号;采用glup、grunt等自动化构建工具自动生成静态资源版本号。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:手工修改版本号容易忽略或忘记,导致功能发布后,客户端由于缓存问题导致系统异常;自动化构建工具自动生成版本号是通过修改文件名的方式来实现的,这样每次都会生成新的文件,如此则需要修改引用该文件的代码,导致操作复杂。因此,无论是通过手动修改还是自动化构建工具,都无法方便地生成静态资源版本号。
发明内容
有鉴于此,本发明实施例提供一种静态资源版本号的生成方法和装置,能够解决无法方便地生成静态资源版本号的问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种静态资源版本号的生成方法,包括:
接收静态资源的获取请求,拦截并解析所述获取请求,获取静态资源引用路径,以确定所述静态资源引用路径下的本地静态资源;
获取所述本地静态资源的最近修改时间,以所述本地静态资源的最近修改时间替换所述获取请求中静态资源的版本号。
可选地,获取所述本地静态资源的最近修改时间,以所述本地静态资源的最近修改时间替换所述获取请求中静态资源的版本号,包括:
获取所述本地静态资源的第一时间戳,所述第一时间戳为所述本地静态资源的最近修改时间;
获取所述获取请求中静态资源的第二时间戳,所述第二时间戳为所述获取请求中终端缓存的静态资源的修改时间;
确定所述第一时间戳与第二时间戳不一致,以所述第一时间戳替换所述获取请求中静态资源的第二时间戳。
可选地,所述本地静态资源的最近修改时间为自动化构建工具的启动时间;
接收静态资源的获取请求,之前,所述方法还包括:
当自动化构建工具启动时,获取并存储所述自动化构建工具的启动时间。
可选地,获取所述本地静态资源的最近修改时间,以所述本地静态资源的最近修改时间替换所述获取请求中静态资源的版本号,之后,所述方法还包括:将最近修改的本地静态资源返回给终端。
可选地,获取所述本地静态资源的最近修改时间,以所述本地静态资源的最近修改时间替换所述获取请求中静态资源的版本号,之后,所述方法还包括:以所述本地静态资源的最近修改时间替换本地页面数据中的静态资源引用路径中的版本号。
另外,根据本发明实施例的另一个方面,提供了一种静态资源版本号的生成装置,包括:
拦截模块,用于接收静态资源的获取请求,拦截并解析所述获取请求,获取静态资源引用路径,以确定所述静态资源引用路径下的本地静态资源;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810189831.6/2.html,转载请声明来源钻瓜专利网。