文件读取方法、装置和系统的制作方法

文档序号:8430505阅读:210来源:国知局
文件读取方法、装置和系统的制作方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别涉及一种文件读取方法、装置和系统。
【背景技术】
[0002]在网页开发过程中,为了减轻服务器端的计算量,为客户端提供更流畅的网页浏览效果,研发人员开发出了一种客户端脚本语言JavaScript。JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言,同时也是一种广泛用于客户端Web (网页)开发的脚本语言,常用来给HTML (Hypertext Markup Language,超文本标记语言)网页添加动态功能,比如响应用户的各种操作。
[0003]JavaScript脚本文件的作用在于控制网页中的对象元素,研发人员将JavaScript脚本文件嵌入HTML页面中,由客户端的浏览器对JavaScript脚本文件进行解释并执行,实现用户与网页内容之间的动态交互。JavaScript脚本文件能够对网页内容进行控制,对用户操作进行响应,实现网页内容的动态交互效果。在一个具体的例子中,假设文件名为a.js的JavaScript脚本文件的内容是在用户打开网页时弹出“Hello”这一英文单词,将该文件名为a.js的JavaScript脚本文件嵌入HTML页面中即可实现上述效果。进一步地,可以对该文件名为a.js的JavaScript脚本文件的内容进行修改,实现在用户打开网页时,首先从服务器端获取用户的昵称“XXX”,然后弹出“Hello,XXX”。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:由于客户端的浏览器具有本地缓存功能,浏览器在打开网页时会优先使用本地缓存中的JavaScript脚本文件。那么如果用户在JavaScript脚本文件未被修改时就已经打开过该网页,贝U当用户再次打开该网页的时候浏览器会优先使用本地缓存中修改前的JavaScript脚本文件而并不使用网页内修改后的JavaScript脚本文件,因此无法实现弹出“Hello,XXX”的效果。此时,用户需要清理浏览器的本地缓存,迫使浏览器读取网页内修改后的JavaScript脚本文件,才能实现在打开网页时弹出“Hello,XXX”的效果。然而,如果在网页开发和调试过程中,每修改一次JavaScript脚本文件的文件内容就要清理一遍浏览器的本地缓存才能查看到修改后的效果的话,将会大大影响网页开发和调试的效率。

【发明内容】

[0005]为了解决现有技术需要手工清理浏览器缓存才能使得浏览器读取新的JavaScript脚本文件,影响网页开发和调试的效率的问题,本发明实施例提供了一种文件读取方法、装置和系统。所述技术方案如下:
[0006]第一方面,提供了一种文件读取方法,所述方法包括:
[0007]检测预定文件的文件内容是否发生变化,所述预定文件为在嵌入网页页面后会被浏览器缓存的文件;
[0008]若检测结果为所述文件内容发生变化,则生成与所述预定文件的当前文件名不同的另一文件名;
[0009]通过所述另一文件名替换所述预定文件的当前文件名;
[0010]将被替换文件名后的所述预定文件嵌入所述网页页面中,所述文件名被替换后的所述预定文件用于触发浏览器在打开所述网页页面时直接读取。
[0011]在第一方面的第一种可能的实施方式中,所述生成与所述预定文件的当前文件名不同的另一文件名,包括:
[0012]根据所述文件内容生成所述文件内容的摘要,将所述摘要作为所述另一文件名;
[0013]或者,
[0014]通过版本管理工具生成与所述预定文件的当前文件名不同的另一文件名。
[0015]结合第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述根据所述文件内容生成所述文件内容的摘要,包括:
[0016]通过消息摘要算法根据所述文件内容生成所述文件内容的摘要;
[0017]或者,
[0018]通过安全散列算法根据所述文件内容生成所述文件内容的摘要。
[0019]结合第一方面、第一方面的第一种可能的实施方式或者第一方面的第二种可能的实施方式,在第三种可能的实施方式中,当所述网页页面为动态网页页面时,所述检测预定文件的文件内容是否发生变化,包括:
[0020]检测脚本文件JavaScript的文件内容是否有变化;
[0021]所述将被替换文件名后的所述预定文件嵌入所述网页页面中,包括:
[0022]将被替换文件名后的所述脚本文件JavaScript嵌入所述动态网页页面中,所述被替换文件名后的所述脚本文件JavaScript用于触发浏览器在打开所述动态网页页面时直接读取。
[0023]第二方面,提供了一种文件读取装置,所述装置包括:
[0024]文件检测模块,用于检测预定文件的文件内容是否发生变化,所述预定文件为在嵌入网页页面后会被浏览器缓存的文件;
[0025]名称生成模块,用于若检测结果为所述文件内容发生变化,则生成与所述预定文件的当前文件名不同的另一文件名;
[0026]名称替换模块,用于通过所述另一文件名替换所述预定文件的当前文件名;
[0027]文件嵌入模块,用于将被替换文件名后的所述预定文件嵌入所述网页页面中,所述文件名被替换后的所述预定文件用于触发浏览器在打开所述网页页面时直接读取。
[0028]在第二方面的第一种可能的实施方式中,所述名称生成模块,包括:第一生成单元;或者,第二生成单元;
[0029]所述第一生成单元,用于根据所述文件内容生成所述文件内容的摘要,将所述摘要作为所述另一文件名;
[0030]或者,
[0031]所述第二生成单元,用于通过版本管理工具生成与所述预定文件的当前文件名不同的另一文件名。
[0032]结合第二方面的第一种可能的实施方式,在第二种可能的实施方式中,所述第一生成单元,包括:第一生成子单元;或者,第二生成子单元;
[0033]所述第一生成子单元,用于通过消息摘要算法根据所述文件内容生成所述文件内容的摘要;
[0034]或者,
[0035]所述第二生成子单元,用于通过安全散列算法根据所述文件内容生成所述文件内容的摘要。
[0036]结合第二方面、第二方面的第一种可能的实施方式或者第二方面的第二种可能的实施方式,在第三种可能的实施方式中,当所述网页页面为动态网页页面时,
[0037]所述文件检测模块,用于检测脚本文件JavaScript的文件内容是否有变化;
[0038]所述文件嵌入模块,用于将被替换文件名后的所述脚本文件JavaScript嵌入所述动态网页页面中,所述被替换文件名后的所述脚本文件JavaScript用于触发浏览器在打开所述动态网页页面时直接读取。
[0039]第三方面,提供了一种文件读取系统,所述系统包括如第二方面及第二方面的各种可能的实施方式中任一所述的文件读取装置。
[0040]本发明实施例提供的技术方案带来的有益效果是:
[0041]当检测预定文件的文件内容发生变化时,通过生成与预定文件的当前文件名不同的另一文件名,并通过该另一文件名替换预定文件的当前文件名,然后将被替换文件名后的预定文件嵌入网页页面中,该文件名被替换后的预定文件用于触发浏览器在打开网页页面时直接读取;解决了现有技术需要手工清理浏览器缓存才能使得浏览器读取新的JavaScript脚本文件,影响网页开发和调试的效率的问题;达到了通过自动替换文件名巧妙地绕开浏览器的缓存,使得浏览器读取文件名被替换后的预定文件,提高网页开发和调试的效率的效果。
【附图说明】
[0042]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0043]图1是本发明一个实施例提供的文件读取方法的方法流程图;
[0044]图2是本发明另一实施例提供的文件读取方法的方法流程图;
[0045]图3是本发明一个实施例提供的文件读取装置的结构方框图;
[0046]图4是本发明另一实施例提供的文件读取装置的结构方框图。
【具体实施方式】
[0047]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0048]发明人发现,为了避免浏览器在打开网页时候优先读取并执行本地缓存中的JavaScript脚本文件,研发人员在修改JavaScript脚本文件的文件内容之后,可以使用一个新的文件名对JavaScript脚本文件的原有的文件名进行替换。将JavaScript脚本文件的原有的文件名替换掉之后,浏览器在读取JavaScri
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1