一种实现文件批量下载的系统及方法_2

文档序号:8322309阅读:来源:国知局
成,其中Master页面中增加一个asp:Hidden标签,用于存放文本验证码,该标签仿照ASP.NET的ViewState机制来命名ID,如命名为—TEXTHASHVERIFICAT1N(并假设下述步骤使用该命名)。并在Master页面的Load过程中增加如下逻辑:如果当前登录的用户暂时与任何文本验证码绑定,或者已经绑定的文本验证码的过期时间已到,则使用⑶ID技术自动生成一个文本验证码,并使用与专用浏览器协商一致的混淆码对该文本验证码进行摘要加密,将加密后的文本验证码更新到数据库中的用户信息中的加密验证码属性,根据当前时间更新生效期,且根据配置文件中规定的有效时间更新失效期,将加密之前的文本验证码写入Master页面中增加的asp:Hidden标签的Text属性。
[0056]3)用户端的专用浏览器获取登录后的Web页面,并进入文件下载页面。
[0057]4)用户端的专用浏览器对内嵌浏览器中的Web内容进行获取分析,首先找到Web页面中id为—TEXTHASHVERIFICAT1N的input-hidden标签,并取得value属性使用textCode变量进行存储。使用DOM解析技术通过网页标签内容附加的属性信息获取所要下载的文件ID的集合,假设其文件ID是被存储到名为fileID的输入域中。
[0058]5)用户端的专用浏览器对textCode变量使用与步骤2)所述同样的混淆码进行摘要加密,并将其值赋值给textHashCode变量,开始遍历步骤4中得到的文件ID集合,将当前正在遍历的文件ID和textHashCode作为请求参数,使用HttpWebRequest模式对当前内嵌浏览器正在访问的Web页面的地址进行POST请求,并将当前正在遍历的文件ID作为表单中的fileID参数,以及textHashCode变量作为表单中的—TEXTHASHVERIFICAT1N参数。
[0059]6) ASP.NET页面处理程序接收到该请求,由于没有提交asp.net_sess1nid属性的Cookie字段,所以该页面处理程序无法根据会话状态获取用户信息,则该页面处理程序尝试获取请求中提交的—TEXTHASHVERIFICAT1N的属性值,如果成功获取,则根据该值寻找数据库中的用户信息,如果成功找到对应的用户信息,则再根据生效期和失效期判定该文本验证码是否有效,如果有效,则再根据文件标识符和数据库中文件权限的设定判定该用户是否具有文件的访问权限,如果有访问权限则执行第7步,上述各条件有一项不满足则执行第9步。
[0060]7) ASP.NET页面处理程序将该用户信息视同为已登录状态,执行文件下载的如下操作,根据文件标识符找到数据文件的文件名和文件物理存放位置以及用户定义的分类规贝1J,并且将文件流写入Response响应流中,然后更改Http报文头中的字段,使用标准的Content-Disposit1n字段表明响应流的类型为附件类型,且文件名为数据库中取得到的文件名,增加一个Attachment-CataRule字段,将用户定义的分类规则写入该字段的值中。
[0061]8)用户端的专用浏览器获取到响应流,并将用户自定义的总存储文件夹目录与Http报文头中的Attachment-CataRule字段属性解析出的子层级目录进行拼装作为文件的存储目录,再与Content-Disposit1n中的文件名称进行拼装,得到保存文件的全路径,并采用同步读写方式将响应流,写入该路径的文件。
[0062]9) ASP.NET页面处理程序根据数据库内容生成错误信息报文,具体操作如下,将请求中包含的文件id在数据库中得到其文件名和通过用户定义的分类规则得到的子层级目录,并组装为一个相对路径形式的文件说明信息,写入Respose响应的正文部分,在Http报文头中增加一个Dowload-Error字段,其值为TRUE。
[0063]10)用户端的专用浏览器获取到响应流,根据Http报文头中的Dowload-Error字段得知此响应为下载错误响应,将此报文的正文部分写入错误日志文本文件中。
[0064]11)如果步骤5开始的遍历未完成,则返回步骤5的遍历部分,如果已经完成则结束此批下载。
【主权项】
1.一种实现文件批量下载的系统,其特征在于,包括在Web应用程序中设置文件输出模块、用户认证模块和文件权限管理模块,以及在用户终端设置网页浏览模块、网页解析模块和文件提取模块; 文件输出模块用于根据文件标识信息寻找到物理文件,并向请求方输出文件数据; 用户认证模块用于生成用户标识信息,并能够根据提交的用户标识信息识别用户; 文件权限管理模块用于判定指定的文件是否能够被指定用户下载; 网页浏览模块用于访问Web应用程序的系统界面; 网页解析模块用于从网页中获取用户标识信息和用户需要下载的文件标识信息清单; 文件提取模块用于访问Web应用程序的文件输出模块并获得指定的文件。
2.—种实现文件批量下载的方法,其特征在于,包括如下步骤: 1)用户通过网页浏览模块登录Web应用程序并提交验证信息; 2)登录成功后Web应用程序中返回登录成功页面,同时用户认证模块生成用户标识信息并写入登录成功页面;否则返回I)让用户继续尝试登录验证; 3)用户终端的网页浏览模块获取登录成功页面,网页解析模块获取步骤2所述的用户标识信息; 4)当用户访问带有文件清单的网页时,Web应用程序生成文件标识信息清单,并写入此网页;用户终端的网页浏览模块获取此带有文件清单的网页时,网页解析模块根据文件标识信息清单解析出所有需要下载的文件标识信息; 5)文件提取模块将文件标识信息清单中的一个未处理的文件标识信息和用户标识信息作为请求参数发送给Web应用程序; 6)Web应用程序根据用户标识信息找到对应的用户信息,根据文件标识信息找到对应的文件信息,如果两者都能对应成功,则使用文件权限管理模块判定该文件是否具有被该用户访问的权利,如果有访问权利,则执行第7)步,上述各条件有一项不满足则执行第9)步; 7)Web应用程序的文件输出模块根据第5)步提交的文件标识信息在文件存储系统中寻找物理文件,寻找成功则输出文件,否则转入第9)步;可在输出文件时附加客户端存放位置和文件标题等附加信息; 8)用户终端的数据提取模块得到数据文件;转入第11)步; 9)Web应用程序返回错误信息; 10)用户终端的数据提取模块获取错误信息; 11)如果文件标识信息清单中的全部文件标识信息都已经被处理,则结束流程,反之则返回第5)步开始继续执行。
3.根据权利要求1所述的实现文件批量下载的系统,其特征在于,所述用户终端设置网页浏览模块、网页解析模块、文件提取模块,其设置方式不限于使用在桌面应用程序中内置嵌入浏览器和/或在浏览其中嵌入组件等模式进行组合。
4.根据权利要求1所述的实现文件批量下载的系统,其特征在于,所述用户标识信息能够在Web应用程序中对应出用户的信息子集。
5.根据权利要求1所述的实现文件批量下载的系统,其特征在于,所述文件标识信息能够在Web应用程序中对应出物理文件的信息以及其他如步骤8所述的附加信息。
6.根据权利要求1所述的实现文件批量下载的系统,其特征在于,所述网页浏览模块,应遵循WWW标准向用户Π接口输出相应的文档化界面,不限于使用IEXh1me等浏览器内核和/或自行实现网页解析功能等方式实现。
7.根据权利要求1所述的实现文件批量下载的系统,其特征在于,所述文件提取模块,在向文件输出模块提交请求时至少包含用户标识信息和文件标识信息,但根据实际应用情况可不限于只包含上述信息。
8.根据权利要求2所述的实现文件批量下载的方法,其特征在于,所述步骤2)所述将生成的用户标识信息写入登录成功页面,不限于写入响应数据的任何一个位置,但应能被网页解析模块访问。
9.根据权利要求2所述的实现文件批量下载的方法,其特征在于,所述步骤4)将文件标识信息清单写入页面,不限于写入响应数据的任何一个位置,但应能被网页解析模块访问,文件标识信息清单数据格式不限,但应能被网页解析模块解析出单个的文件标识信息清单。
10.根据权利要求2所述的实现文件批量下载的方法,其特征在于,所述步骤4)中,网页可加入用户选取功能,使得网页解析模块执行解析时只得到用户想要下载的文件标识信息清单。
11.根据权利要求2所述的实现文件批量下载的方法,其特征在于,所述步骤5)中,若Web应用程序中的用户认证模块规定了用户标识信息的加密方法,则根据该加密方法进行加密后再作为参数提交。
【专利摘要】一种实现文件批量下载的系统及方法,属于计算机网络、网络数据传输技术领域。其特征在于在Web应用程序中设置文件输出模块、用户认证模块、文件权限管理模块,以及在用户终端设置网页浏览模块、网页解析模块、文件提取模块。并实现了利用用户终端的网页浏览模块访问和使用Web应用程序,并提供能够利用网页解析模块配合文件提取模块经过用户认证模块和文件权限管理模块的许可后合法获取数据文件清单,并通过请求文件输出模块依次获取并保存所需的数据文件的功能。本发明使得Web应用程序能够在具备Web应用易部署易升级等优点的同时,具备批量下载的功能。
【IPC分类】H04L29-08
【公开号】CN104639599
【申请号】CN201410424530
【发明人】董岩, 江卓逞, 曾佩杰, 蒋亚平, 吴飞
【申请人】中国直升机设计研究所
【公开日】2015年5月20日
【申请日】2014年8月26日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1