CN109254954A - 文件处理方法和装置、计算设备及存储介质 - Google Patents
文件处理方法和装置、计算设备及存储介质 Download PDFInfo
- Publication number
- CN109254954A CN109254954A CN201811070512.XA CN201811070512A CN109254954A CN 109254954 A CN109254954 A CN 109254954A CN 201811070512 A CN201811070512 A CN 201811070512A CN 109254954 A CN109254954 A CN 109254954A
- Authority
- CN
- China
- Prior art keywords
- file
- obj ect
- information
- compression
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书提供一种文件处理方法和装置、计算设备及存储介质,其中,文件处理方法包括:将对象文件通过编译压缩生成压缩文件,生成包含对象文件的文件信息的信息文件,将信息文件存储于与存储对象文件的第一存储位置不同的第二存储位置,根据压缩文件的文件名匹配相对应的信息文件,其中信息文件中包含有对象文件的存储路径;响应于客户端的文件获取请求将第一压缩文件发送至客户端;根据定位请求确定定位请求对应的第一信息文件,根据第一信息文件获取与第一信息文件对应的第一对象文件的第一存储路径;根据第一存储路径获取与第一信息文件对应的第一对象文件,根据解压报错信息确定第一对象文件中对应的错误位置信息,并发送给客户端。
Description
技术领域
本说明书涉及文件处理技术领域,特别涉及一种文件处理方法和装置、计算设备及存储介质。
背景技术
目前对于编译后文件位置的回溯方案,基于编译压缩时生成的源映射(sourcemap)文件,sourcemap文件中记录编译前文件位置信息,文件变量名称以及文件路径等信息,通过对源文件编译压缩完成得到的sourcemap文件进行反编译,找到源文件位置,可以在编译压缩后出现代码报错的情况下,迅速的找到错误的位置,但是进行反编译的过程是在浏览器端进行的,在浏览器端进行反编译将会造成公开文件源码以及代码公开的风险。
发明内容
有鉴于此,本说明书实施例提供了一种文件处理方法和装置、计算设备及存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种文件处理方法,应用于服务器端,包括:
将对象文件通过编译压缩生成第一压缩文件,生成包含所述对象文件的文件信息的第一信息文件,将所述信息文件存储于与存储所述对象文件的第一存储位置不同的第二存储位置,其中所述信息文件中包含有所述对象文件的存储路径;
响应于客户端的文件获取请求将第一压缩文件发送至所述客户端;
当接收到所述客户端发送的包含所述第一压缩文件的解压报错信息的定位请求时,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径;
根据所述第一存储路径获取第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息;
将所述错误位置信息发送给所述客户端。
可选的,所述对象文件具有多个,所述将对象文件通过编译压缩生成压缩文件包括:
对多个对象文件通过编译压缩工具进行合并压缩,生成所述压缩文件,所述压缩文件的文件名与所述对象文件的文件名以及所述信息文件的文件名相关联。
可选的,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径包括:
从所述定位请求获取所述第一对象文件的文件名称,将所获取的文件名称与所述第二存储位置中文件的文件名称相匹配,获得与所述第一对象文件对应的所述第一信息文件;
从所述第一信息文件中得到所述第一对象文件的第一存储路径。
可选的,所述第一对象文件存储在本地服务器,所述第一信息文件存储在内容分发网络中。
可选的,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息包括:
根据所述解压报错信息,确定所述解压报错信息与所述第一对象文件中对应的错误位置信息,所述错误位置信息为所述第一对象文件报错的行/列。
可选的,所述将错误位置信息发送给所述客户端包括:
将所述错误位置信息进行处理得到错误位置信息列表或者图形化表示,将所述错误位置信息列表或者图形化表示发送给客户端。
可选的,对多个对象文件通过编译压缩工具进行合并压缩时,还包括:替换所述对象文件中的变量名。
可选的,所述压缩文件的文件名通过密码散列函数的形式生成。
可选的,所述编译压缩工具是前端自动化构建工具或者静态模块打包器。
可选的,所述信息文件包括:对象文件的存储路径信息、文件名称、文件变量名。
可选的,所述信息文件为sourcemap文件。
根据本说明书实施例的第二方面,提供了一种文件处理方法,应用于客户端,包括:
向服务器发送第一对象文件经过编译压缩得到的第一压缩文件的文件获取请求,并接收所述服务器端发送的响应于所述文件获取请求的第一压缩文件;
对所述第一压缩文件进行解压,在解压报错的情况下,向所述服务器发送包含所述第一压缩文件的解压报错信息的定位请求;
接收所述服务器端发送的响应于所述定位请求的错误位置信息;
对接收到的所述错误信息文件进行展示。
可选的,所述错误位置信息为所述第一压缩文件对应的原文件报错的行/列。
可选的,接收到的所述错误位置信息形式为列表或者图形化表示,对包含所述错误位置信息的列表或者图形化表示进行展示。
根据本说明书实施例的第三方面,提供了一种文件处理装置,应用于服务器端,包括:
编译压缩模块,被配置为将对象文件通过编译压缩生成第一压缩文件,生成包含所述对象文件的文件信息的第一信息文件,将所述信息文件存储于与存储所述对象文件的第一存储位置不同的第二存储位置,其中所述信息文件中包含有所述对象文件的存储路径;
第一发送模块,被配置为响应于客户端的文件获取请求将第一压缩文件发送至所述客户端;
获取模块,被配置当接收到所述客户端发送的包含所述第一压缩文件的解压报错信息的定位请求时,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径;
定位模块,被配置为根据所述第一存储路径获取第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息;
第二发送模块,被配置为将所述错误位置信息发送给所述客户端。
根据本说明书实施例的第四方面,提供了一种文件处理装置,应用于客户端,包括:
收发模块,被配置为向服务器发送第一对象文件经过编译压缩得到的第一压缩文件的文件获取请求,并接收所述服务器端发送的响应于所述文件获取请求的第一压缩文件;
解压发送模块,被配置为对所述第一压缩文件进行解压,在解压报错的情况下,向所述服务器发送包含所述第一压缩文件的解压报错信息的定位请求;
接收模块,被配置为接收所述服务器端发送的响应于所述定位请求的错误位置信息;
展示模块,被配置为对接收到的所述错误信息文件进行展示。
根据本说明书实施例的第五方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现上述方法的步骤。
根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,储有计算机指令,该指令被处理器执行时实现上述的方法的步骤。
本申请中通过对对象文件进行编译压缩得到压缩文件,所述对象文件存储于第一存储位置中,生成的所述信息文件存储于与第一存储位置不同的第二存储位置中,根据所述压缩文件的文件名称可以匹配到存储于第二存储位置的相对应的所述信息文件,所述信息文件中包含所述对象文件的存储路径,当压缩文件在解压操作的过程中报错时,在服务器端进行反编译,根据解压报错信息匹配文件名相对应的所述第一信息文件,通过所述第一信息文件得到所述第一对象文件的第一存储路径获取所述第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息,并将所述错误位置信息处理成列表的形式发送给客户端;本申请将所述压缩文件和所述对象文件分开存储,可以使原文件的源代码不被公开,使数据更加安全,将所述信息文件存储于内容分发网络可以更快的定位报错文件,找到更加准确的错误信息以及更加精确地错误位置,由此可以更加快速的找到问题并予以解决。
附图说明
图1是本说明书一实施例提供的一种文件处理系统的结构示意图;
图2为本说明书一实施例中的一种文件处理方法的流程图;
图3为本说明书一实施例中的一种文件处理方法的流程图;
图4为本说明书一实施例中的一种文件处理方法的流程图;
图5为本说明书一实施例中的一种文件处理装置模块图;
图6为本说明书一实施例中的一种文件处理装置模块图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
下面通过具体实施例,对本发明进行详细说明。
参考图1,图1为本说明书一实施例提供的一种文件处理系统的结构示意图,在介绍本申请的技术方案之前,首先对本申请所涉及的文件处理系统的架构进行说明。
图1是示出了本说明书一实施例的文件处理系统的结构示意图。包括服务器端110,网络130和客户端120。
所述服务器端110的部件包括但不限于存储器和处理器,所述客户端120可以是浏览器,处理器与存储器通过总线相连接,数据库用于保存数据。
服务器端110和所述客户端120还包括接入设备,接入设备使得服务器端110和所述客户端120能够经由一个或多个网络130通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。
接入设备可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
图2示出了本说明书一实施例中的一种文件处理方法的流程图,应用于服务器端,如图2所示,包括步骤202至步骤210。
步骤202:将对象文件通过编译压缩生成第一压缩文件,生成包含所述对象文件的文件信息的第一信息文件,将所述信息文件存储于与存储所述对象文件的第一存储位置不同的第二存储位置,其中所述信息文件中包含有所述对象文件的存储路径。
本说明书一种实施例中,所述对象文件具有多个,所述将对象文件通过编译压缩生成压缩文件包括:
对多个对象文件通过编译压缩工具进行合并压缩,生成所述压缩文件,所述压缩文件的文件名与所述对象文件的文件名以及所述信息文件的文件名相关联。
本说明书一种实施例中,对多个对象文件通过编译压缩工具进行合并压缩时,还包括:替换所述对象文件中的变量名。
本说明书一实施例中,所述变量名一般会是语义化的表达,比如errorNumbers可以用来表示错误号码,在替换时,“errorNumbers”可以被替换成简短的表达,例如“e”,替换后,不同作用域下的变量也可以重名,不会影响执行,全部替换完成之后会明显缩短代码长度,减小文件体积,同时也会明显降低可读性,防止代码盗用。
本说明书一种实施例中,所述压缩文件的文件名通过密码散列函数的形式生成;所述密码散列函数为md5特征码,本申请通过利用md5特征码生成所述压缩文件的文件名,md5特征码是根据文件内容进行生成的,方便与其他文件对应;所述md5特征码在本说明书中是基于直译式脚本语言架构(javascript)实现的。
本说明书一种实施例中,所述编译压缩工具是前端自动化构建工具或者静态模块打包器。所述前端自动化构建工具为Gulp,所述静态模块打包器为Webpack;本申请通过所述编译压缩工具将多个对象文件进行编译压缩,将多个文件进行合并,替换文件中的变量名,可以减小文件的体积,提高文件的传输效率,因此实现文件的高效率传输。
本说明书一种实施例中,所述信息文件包括:对象文件的存储路径信息、文件名称、文件变量名;本申请在对所述对象文件编译压缩的同时会生成所述信息文件,所述信息文件包含所述对象文件的所有文件信息,本申请中所使用到的信息为所述对象文件的存储路径信息、文件名称以及文件变量名,所述信息文件的文件名与所述压缩文件的文件名对应。
本说明书一种实施例中,所述信息文件为sourcemap文件;本申请中所述sourcemap文件为sourcemaps的输出文件,sourcemaps为将所述压缩文件恢复到所述对象文件原始位置的映射代码的方式。
本说明书一实施例中,所述sourcemap文件中主要包括:version:sourcemap的版本,目前为3;file:转换后的文件名;sourceroot:转换前的文件所在的目录,如果与转换前的文件在同一目录,该项为空;sources:转换前的文件,该项是一个数组,表示可能存在多个文件合并;names:转换前的所有变量名和属性名;mappings:记录位置信息的字符串。
本说明书一种实施例中,所述对象文件存储在本地服务器,所述信息文件存储在内容分发网络中;所述对象文件在进行编译压缩之前就已经存储于第一位置,所述信息文件是在文件生成之后存储于第二位置;本申请中将所述对象文件存储在本地服务器可以方便调用,使调用文件的过程更加方便快捷,将所述信息文件存储在CDN中,CDN的全称是Content Delivery Network,即内容分发网络,可以尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定,可以使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度,将所述对象文件和所述信息文件分开存储的目的是为了保证所述对象文件的源代码不被公开,同时也可以获取所述对象文件的路径信息以及编译压缩前的位置信息。
步骤204:响应于客户端的文件获取请求将第一压缩文件发送至所述客户端。
本说明书一种实施例中,所述客户端向所述服务器端发送文件获取请求,所述服务器端接收文件获取请求,将所述第一压缩文件发送至客户端。
步骤206:当接收到所述客户端发送的包含所述第一压缩文件的解压报错信息的定位请求时,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径;
本说明书一种实施例中,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径包括:
从所述定位请求获取所述第一对象文件的文件名称,将所获取的文件名称与所述第二存储位置中文件的文件名称相匹配,获得与所述第一对象文件对应的所述第一信息文件;
从所述第一信息文件中得到所述第一对象文件的第一存储路径。
本说明书一实施例中,在浏览器引擎进行逐行(语句)解析和执行javascript文件(压缩后文件)过程中,所述解压报错信息内包含错误出现的位置、错误内容等信息,所述信息文件中记录了整个文件逐条语句压缩前后的位置对应信息,可将压缩后错误出现的位置对应成压缩前所述对象文件的位置,最终获取到可识别的行/列。
本申请中将所述第一信息文件存储于CDN中,所述定位请求中包含解压报错文件的文件信息,利用解压报错文件中包含的所述第一对象文件的文件名称与存储于CDN中的所述信息文件相对应,得到所述第一信息文件,从所述第一信息文件中获取所述第一对象文件的第一存储路径,将所述信息文件存于CDN中可以保证在源代码不被公开的前提下,同样可以获取源文件路径,并且存于CDN中可以更快速的找到所述信息文件,提高传输效率。
步骤208:根据所述第一存储路径获取第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息。
本说明书一种实施例中,所述根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息包括:
根据所述解压报错信息,确定所述解压报错信息与所述第一对象文件中对应的错误位置信息,所述错误位置信息为所述第一对象文件报错的行/列。
本申请中根据所述第一存储路径获取与所述第一信息文件相对应的第一对象文件,根据所述解压报错信息确定所述第一对象文件的错误位置信息,可以实现更加快速的定位报错信息,得到更加准确的错误信息和错误位置,以便更加快速的找到问题并加以修改。
步骤210:将所述错误位置信息发送给所述客户端。
本说明书一种实施例中,将所述错误位置信息发送给所述客户端包括:
将所述错误位置信息进行处理得到错误位置信息列表或者图形化表示,将所述错误位置信息列表或者图形化表示发送给客户端。
本申请一种实施例中,例如:对象文件的文件名称为filename.js,相对应通过压缩编译得到的压缩文件的文件名称与对象文件的文件名称相对应为filename-91449a1d412b0ac58e4f42c6dce31e06.js,信息文件的文件名称与压缩文件的文件名称相对应为filename-91449a1d412b0ac58e4f42c6dce31e06.js.map。
本申请中通过对对象文件进行编译压缩得到压缩文件,所述对象文件存储于第一存储位置中,生成的所述信息文件存储于与第一存储位置不同的第二存储位置中,根据所述压缩文件的文件名称可以匹配到存储于第二存储位置的相对应的所述信息文件,所述信息文件中包含所述对象文件的存储路径,当压缩文件在解压操作的过程中报错时,在服务器端进行反编译,根据解压报错信息匹配文件名相对应的所述第一信息文件,通过所述第一信息文件得到所述第一对象文件的第一存储路径获取所述第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息,并将所述错误位置信息处理成列表的形式发送给客户端;本申请中将所述压缩文件和所述对象文件分开存储,可以使原文件的源代码不被公开,使数据更加安全,将所述信息文件存储于CDN可以更快的定位报错文件,找到更加准确的错误信息以及更加精确地错误位置,由此可以更加快速的找到问题并予以解决。
图3示出了本说明书一实施例中的一种文件处理方法的流程图,应用于客户端,如图3所示,包括步骤302至步骤308。
步骤302:向服务器发送第一对象文件经过编译压缩得到的第一压缩文件的文件获取请求,并接收所述服务器端发送的响应于所述文件获取请求的第一压缩文件。
步骤304:对所述第一压缩文件进行解压,当解压报错时,向所述服务器发送包含所述第一压缩文件的解压报错信息的定位请求。
步骤306:接收所述服务器端发送的响应于所述定位请求的错误位置信息。
本说明书一种实施例中,所述错误位置信息为所述第一压缩文件对应的原文件报错的行/列。
步骤308:对接收到的所述错误信息文件进行展示。
本说明书一种实施例中,接收到的所述错误位置信息形式为列表或者图形化表示,对包含所述错误位置信息的列表或者图形化表示进行展示。
本申请中通过对对象文件进行编译压缩得到压缩文件,所述对象文件存储于第一存储位置中,生成的所述信息文件存储于与第一存储位置不同的第二存储位置中,根据所述压缩文件的文件名称可以匹配到存储于第二存储位置的相对应的所述信息文件,所述信息文件中包含所述对象文件的存储路径,当压缩文件在解压操作的过程中报错时,在服务器端进行反编译,根据解压报错信息匹配文件名相对应的所述第一信息文件,通过所述第一信息文件得到所述第一对象文件的第一存储路径获取所述第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息,并将所述错误位置信息处理成列表的形式发送给客户端;本申请中将所述压缩文件和所述对象文件分开存储,可以使原文件的源代码不被公开,使数据更加安全,将所述信息文件存储于CDN可以更快的定位报错文件,找到更加准确的错误信息以及更加精确地错误位置,由此可以更加快速的找到问题并予以解决。
图4为本说明书一实施例中的一种文件处理方法流程图,如图4所示,该文件处理方法流程图包括步骤402至步骤420。
步骤402:采集对象文件。
本说明书一实施例中,所述对象文件为原文件;
本说明书一实施例中,所述对象文件存储在本地服务器中。
步骤404:对所述对象文件通过编译压缩工具进行编译压缩。
本说明书一实施例中,所述编译压缩工具是前端自动化构建工具(Gulp)或者静态模块打包器(Webpack)。
步骤406:通过编译压缩过程得到压缩文件。
本说明书一实施例中,所述压缩文件的文件名通过密码散列函数(MD5 Message-Digest Algorithm)的形式生成。
步骤408:根据所述对象文件生成信息文件(sourcemap文件),所述信息文件(sourcemap文件)中包含所述对象文件的文件信息。
本说明书一实施例中,所述信息文件中包括:对象文件的存储路径信息、文件名称、文件变量名;
本说明书一实施例中,所述信息文件的文件名与所述对象文件的文件名相对应。
步骤410:将所述信息文件(sourcemap文件)上传保存至内容分发网络(CDN-Content Delivery Network)中,将所述信息文件和所述对象文件分开存储。
步骤412:在对所述压缩文件进行解压的过程中出现错误的情况下,对所述信息文件进行反编译。
步骤414:根据解压出错的所述压缩文件的文件名称与存储在所述CDN中的所述信息文件的文件名称相匹配,从所述CDN得到对应的所述信息文件。
步骤416:根据获得的所述信息文件得到所述对象文件的存储地址。
步骤418:根据解压报错信息,确定所述解压报错信息与所述对象文件中对应的错误位置信息。
本说明书一实施例中,所述错误位置信息为所述对象文件报错的行/列。
步骤420:在服务器端对所述错误位置信息进行列表或者图形化处理,将可以表示所述错误信息的列表或图像发送至客户端。
本申请中通过对对象文件进行编译压缩得到压缩文件,所述对象文件存储于本地服务器中,生成的所述信息文件存储于与本地服务器不同的内容分发网络中,根据所述压缩文件的文件名称可以匹配到存储于内容分发网络的相对应的所述信息文件,所述信息文件中包含所述对象文件的存储路径,当压缩文件在解压操作的过程中报错时,在服务器端进行反编译,根据解压报错信息匹配文件名相对应的所述信息文件,通过所述信息文件得到所述对象文件的存储路径获取所述对象文件,根据所述解压报错信息确定所述对象文件中对应的错误位置信息,并将所述错误位置信息处理成列表的形式发送给客户端;本申请将所述压缩文件和所述对象文件分开存储,可以使原文件的源代码不被公开,使数据更加安全,将所述信息文件存储于内容分发网络可以更快的定位报错文件,找到更加准确的错误信息以及更加精确地错误位置,由此可以更加快速的找到问题并予以解决。
图5示出了本申请实施例中的一种文件处理装置模块图,应用于服务器端,如图5所示,该文件处理装置500包括编译压缩模块502、第一发送模块504、获取模块506、定位模块508和第二发送模块510。
编译压缩模块502:被配置为将对象文件通过编译压缩生成第一压缩文件,生成包含所述对象文件的文件信息的第一信息文件,将所述信息文件存储于与存储所述对象文件的第一存储位置不同的第二存储位置,其中所述信息文件中包含有所述对象文件的存储路径。
第一发送模块504:被配置为响应于客户端的文件获取请求将第一压缩文件发送至所述客户端。
获取模块506:被配置为当接收到所述客户端发送的包含第一压缩文件的解压报错信息的定位请求时,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径。
定位模块508:被配置为根据所述第一存储路径获取与所述第一信息文件对应的第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息。
第二发送模块510:被配置为将所述错误位置信息发送给所述客户端。
一个可选的实施例中,所述编译压缩模块被进一步配置为:当所述对象文件具有多个时,所述编译压缩模块包括:
合并压缩单元,被配置为将多个对象文件通过编译压缩工具进行合并压缩,生成所述压缩文件;
文件名生成单元,被配置为所述压缩文件的文件名与所述对象文件的文件名以及所述信息文件的文件名相关联。
一个可选的实施例中,所述获取模块包括:
信息文件查找单元,被配置为从所述定位请求获取所述第一对象文件的文件名称,将所获取的文件名称与所述CDN中文件的文件名称相匹配,获得与所述第一对象文件对应的所述第一信息文件;
路径获取单元,被配置为从所述第一信息文件中得到所述第一对象文件的第一存储路径。
一个可选的实施例中,所述编译压缩模块被进一步配置为:所述第一对象文件存储在本地服务器,所述第一信息文件存储在内容分发网络中。
一个可选的实施例中,所述定位模块被进一步配置为:根据所述解压报错信息,确定所述解压报错信息与所述第一对象文件中对应的错误位置信息,所述错误位置信息为所述第一对象文件报错的行/列。
一个可选的实施例中,所述第二发送模块被进一步配置为:将所述错误位置信息进行处理得到错误位置信息列表或者图形化表示,将所述错误位置信息列表或者图形化表示发送给客户端。
一个可选的实施例中,合并压缩单元还被配置为:替换所述对象文件中的变量名。
一个可选的实施例中,文件名生成单元还被配置为:所述压缩文件的文件名通过密码散列函数的形式生成。
一个可选的实施例中,合并压缩单元还被配置为:所述编译压缩工具是前端自动化构建工具或者静态模块打包器。
一个可选的实施例中,所述编译压缩模块被进一步配置为:所述信息文件包括:对象文件的存储路径信息、文件名称、文件变量名。
一个可选的实施例中,所述信息文件为sourcemap文件。
图6示出了本申请实施例中的一种文件处理装置模块图,应用于客户端,如图6所示,该文件处理装置600包括收发模块602、解压发送模块604、接收模块606、展示模块608。
收发模块602:被配置为向服务器发送第一对象文件经过编译压缩得到的第一压缩文件的文件获取请求,并接收所述服务器端发送的响应于所述文件获取请求的第一压缩文件。
解压发送模块604:被配置为对所述第一压缩文件进行解压,在解压报错的情况下,向所述服务器发送包含所述第一压缩文件的解压报错信息的定位请求。
接收模块606:被配置为接收所述服务器端发送的响应于所述定位请求的错误位置信息。
展示模块608:被配置为对接收到的所述错误信息文件进行展示。
一个可选的实施例中,所述接收模块被进一步配置为:所述错误位置信息为所述第一压缩文件对应的原文件报错的行/列。
一个可选的实施例中,所述展示模块被进一步配置为:接收到的所述错误位置信息形式为列表或者图形化表示,对包含所述错误位置信息的列表或者图形化表示进行展示。
上述实施例阐明的装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书一实施例还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的文件处理方法的步骤。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述的文件处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的文件处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述文件处理方法的技术方案的描述。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (24)
1.一种文件处理方法,应用于服务器端,其特征在于,包括:
将对象文件通过编译压缩生成第一压缩文件,生成包含所述对象文件的文件信息的第一信息文件,将所述信息文件存储于与存储所述对象文件的第一存储位置不同的第二存储位置,其中所述信息文件中包含有所述对象文件的存储路径;
响应于客户端的文件获取请求将第一压缩文件发送至所述客户端;
当接收到所述客户端发送的包含所述第一压缩文件的解压报错信息的定位请求时,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径;
根据所述第一存储路径获取第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息;
将所述错误位置信息发送给所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述对象文件具有多个,所述将对象文件通过编译压缩生成压缩文件包括:
对多个对象文件通过编译压缩工具进行合并压缩,生成所述压缩文件,所述压缩文件的文件名与所述对象文件的文件名以及所述信息文件的文件名相关联。
3.根据权利要求1所述的方法,其特征在于,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径包括:
从所述定位请求获取所述第一对象文件的文件名称,将所获取的文件名称与所述第二存储位置中文件的文件名称相匹配,获得与所述第一对象文件对应的所述第一信息文件;
从所述第一信息文件中得到所述第一对象文件的第一存储路径。
4.根据权利要求3所述的方法,其特征在于,所述第一对象文件存储在本地服务器,所述第一信息文件存储在内容分发网络中。
5.根据权利要求1所述的方法,其特征在于,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息包括:
根据所述解压报错信息,确定所述解压报错信息与所述第一对象文件中对应的错误位置信息,所述错误位置信息为所述第一对象文件报错的行/列。
6.根据权利要求1所述的方法,其特征在于,所述将错误位置信息发送给所述客户端包括:
将所述错误位置信息进行处理得到错误位置信息列表或者图形化表示,将所述错误位置信息列表或者图形化表示发送给客户端。
7.根据权利要求2所述的方法,其特征在于,对多个对象文件通过编译压缩工具进行合并压缩时,还包括:替换所述对象文件中的变量名。
8.根据权利要求2所述的方法,其特征在于,所述压缩文件的文件名通过密码散列函数的形式生成。
9.根据权利要求2所述的方法,其特征在于,所述编译压缩工具是前端自动化构建工具或者静态模块打包器。
10.根据权利要求1所述的方法,其特征在于,所述信息文件包括:对象文件的存储路径信息、文件名称、文件变量名。
11.根据权利要求10所述的方法,其特征在于,所述信息文件为sourcemap文件。
12.一种文件处理装置,应用于服务器端,其特征在于,包括:
编译压缩模块,被配置为将对象文件通过编译压缩生成第一压缩文件,生成包含所述对象文件的文件信息的第一信息文件,将所述信息文件存储于与存储所述对象文件的第一存储位置不同的第二存储位置,其中所述信息文件中包含有所述对象文件的存储路径;
第一发送模块,被配置为响应于客户端的文件获取请求将第一压缩文件发送至所述客户端;
获取模块,被配置为当接收到所述客户端发送的包含第一压缩文件的解压报错信息的定位请求时,根据所述定位请求确定所述定位请求对应的第一信息文件,根据所述第一信息文件获取与所述第一信息文件对应的第一对象文件的第一存储路径;
定位模块,被配置为根据所述第一存储路径获取第一对象文件,根据所述解压报错信息确定所述第一对象文件中对应的错误位置信息;
第二发送模块,被配置为将所述错误位置信息发送给所述客户端。
13.根据权利要求12所述的装置,其特征在于,在所述对象文件具有多个的情况下,所述编译压缩模块包括:
合并压缩单元,被配置为将多个对象文件通过编译压缩工具进行合并压缩,生成所述压缩文件;
文件名生成单元,被配置为所述压缩文件的文件名与所述对象文件的文件名以及所述信息文件的文件名相关联。
14.根据权利要求12所述的装置,其特征在于,所述获取模块包括:
信息文件查找单元,被配置为从所述定位请求获取所述第一对象文件的文件名称,将所获取的文件名称与所述第二存储位置中文件的文件名称相匹配,获得与所述第一对象文件对应的所述第一信息文件;
路径获取单元,被配置为从所述第一信息文件中得到所述第一对象文件的第一存储路径。
15.根据权利要求14所述的装置,其特征在于,所述第一对象文件存储在本地服务器,所述第一信息文件存储在内容分发网络中。
16.根据权利要求12所述的装置,其特征在于,所述定位模块被进一步配置为:根据所述解压报错信息,确定所述解压报错信息与所述第一对象文件中对应的错误位置信息,所述错误位置信息为所述第一对象文件报错的行/列。
17.根据权利要求12所述的装置,其特征在于,所述第二发送模块被进一步配置为:将所述错误位置信息进行处理得到错误位置信息列表或者图形化表示,将所述错误位置信息列表或者图形化表示发送给客户端。
18.根据权利要求13所述的装置,其特征在于,合并压缩单元还被配置为:替换所述对象文件中的变量名。
19.根据权利要求13所述的装置,其特征在于,文件名生成单元还被配置为:所述压缩文件的文件名通过密码散列函数的形式生成。
20.根据权利要求13所述的装置,其特征在于,合并压缩单元还被配置为:所述编译压缩工具是前端自动化构建工具或者静态模块打包器。
21.根据权利要求12所述的装置,其特征在于,所述信息文件包括:对象文件的存储路径信息、文件名称、文件变量名。
22.根据权利要求21所述的装置,其特征在于,所述信息文件为sourcemap文件。
23.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现权利要求1-11任一项所述的方法的步骤。
24.一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要求1-11任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811070512.XA CN109254954B (zh) | 2018-09-13 | 2018-09-13 | 文件处理方法和装置、计算设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811070512.XA CN109254954B (zh) | 2018-09-13 | 2018-09-13 | 文件处理方法和装置、计算设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109254954A true CN109254954A (zh) | 2019-01-22 |
CN109254954B CN109254954B (zh) | 2020-06-09 |
Family
ID=65046936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811070512.XA Active CN109254954B (zh) | 2018-09-13 | 2018-09-13 | 文件处理方法和装置、计算设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109254954B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110647351A (zh) * | 2019-09-29 | 2020-01-03 | 北京小米移动软件有限公司 | 源代码地图文件还原方法、装置及存储介质 |
CN111090582A (zh) * | 2019-11-22 | 2020-05-01 | 东软集团股份有限公司 | 错误代码定位方法、装置、存储介质及电子设备 |
CN113656210A (zh) * | 2021-08-18 | 2021-11-16 | 网易(杭州)网络有限公司 | 报错信息的处理方法、装置、服务器和可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040156613A1 (en) * | 2001-07-06 | 2004-08-12 | Hempel Andrew Kosamir Henry | Method and system for computer software application execution |
CN102792296A (zh) * | 2011-08-15 | 2012-11-21 | 展讯通信(上海)有限公司 | 移动终端中请求页面调度方法、控制器以及移动终端 |
CN103399804A (zh) * | 2013-07-31 | 2013-11-20 | 珠海金山网络游戏科技有限公司 | 一种远程打包文件修复的方法及系统 |
CN103617133A (zh) * | 2013-12-06 | 2014-03-05 | 北京奇虎科技有限公司 | 一种Windows系统中虚拟内存压缩方法和装置 |
CN107656742A (zh) * | 2017-09-27 | 2018-02-02 | 北京奇虎科技有限公司 | 一种软件产品发布方法和装置 |
CN107967143A (zh) * | 2017-12-14 | 2018-04-27 | 泰康保险集团股份有限公司 | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 |
-
2018
- 2018-09-13 CN CN201811070512.XA patent/CN109254954B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040156613A1 (en) * | 2001-07-06 | 2004-08-12 | Hempel Andrew Kosamir Henry | Method and system for computer software application execution |
CN102792296A (zh) * | 2011-08-15 | 2012-11-21 | 展讯通信(上海)有限公司 | 移动终端中请求页面调度方法、控制器以及移动终端 |
CN103399804A (zh) * | 2013-07-31 | 2013-11-20 | 珠海金山网络游戏科技有限公司 | 一种远程打包文件修复的方法及系统 |
CN103617133A (zh) * | 2013-12-06 | 2014-03-05 | 北京奇虎科技有限公司 | 一种Windows系统中虚拟内存压缩方法和装置 |
CN107656742A (zh) * | 2017-09-27 | 2018-02-02 | 北京奇虎科技有限公司 | 一种软件产品发布方法和装置 |
CN107967143A (zh) * | 2017-12-14 | 2018-04-27 | 泰康保险集团股份有限公司 | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110647351A (zh) * | 2019-09-29 | 2020-01-03 | 北京小米移动软件有限公司 | 源代码地图文件还原方法、装置及存储介质 |
CN110647351B (zh) * | 2019-09-29 | 2024-01-09 | 北京小米移动软件有限公司 | 源代码地图文件还原方法、装置及存储介质 |
CN111090582A (zh) * | 2019-11-22 | 2020-05-01 | 东软集团股份有限公司 | 错误代码定位方法、装置、存储介质及电子设备 |
CN113656210A (zh) * | 2021-08-18 | 2021-11-16 | 网易(杭州)网络有限公司 | 报错信息的处理方法、装置、服务器和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109254954B (zh) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113168326B (zh) | 用于无线通信系统中的基于网络的媒体处理功能的管理的方法和设备 | |
WO2021051880A1 (zh) | 资源数据获取的方法、装置、计算机设备和存储介质 | |
US10116791B2 (en) | Methods and apparatus for transmitting data | |
CN105868231A (zh) | 缓存数据的更新方法及装置 | |
CN109254954A (zh) | 文件处理方法和装置、计算设备及存储介质 | |
CN107741989A (zh) | 一种图像数据管理方法 | |
CN103942585A (zh) | 一种将信息转化为二维码的方法以及使用该方法的二维码扫描打印装置 | |
US20160241649A1 (en) | Directory service discovery and/or learning | |
CN109908585A (zh) | 一种文件处理方法及系统、计算设备及存储介质 | |
CN103701817B (zh) | 一种配置文件的生成方法及装置 | |
CN104378234A (zh) | 跨数据中心的数据传输处理方法及系统 | |
CN108595393A (zh) | 一种自动填表方法和装置 | |
CN105208065A (zh) | 文件发送方法及装置 | |
CN105554136B (zh) | 备份数据还原方法、装置及系统 | |
CN107391277A (zh) | 信息处理方法和装置 | |
CN108549586B (zh) | 信息处理方法和装置 | |
CN108108173A (zh) | 一种信息处理方法和装置 | |
CN108228365A (zh) | 一种函数请求发送方法、函数请求调用方法及装置 | |
CN110519656B (zh) | 自适应流媒体的播放方法、系统以及服务器 | |
CN114221836A (zh) | 数据处理方法及装置 | |
CN113094287A (zh) | 页面兼容性检测方法、装置、设备及存储介质 | |
CN108133026A (zh) | 一种多数据的处理方法、系统及存储介质 | |
CN107172109A (zh) | 基于ims通话显示头像的方法、存储设备及移动终端 | |
CN106878145A (zh) | 一种自定义图片的显示方法、显示装置及显示系统 | |
CN114827274B (zh) | 请求处理方法以及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |