CN105635186A - 一种基于http传输协议文件读写服务的下载方法 - Google Patents
一种基于http传输协议文件读写服务的下载方法 Download PDFInfo
- Publication number
- CN105635186A CN105635186A CN201610184031.6A CN201610184031A CN105635186A CN 105635186 A CN105635186 A CN 105635186A CN 201610184031 A CN201610184031 A CN 201610184031A CN 105635186 A CN105635186 A CN 105635186A
- Authority
- CN
- China
- Prior art keywords
- file
- download
- downloaded
- server end
- service
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于HTTP传输协议文件读写服务的下载方法,属于互联网环境中,文件下载安全的技术领域,本发明要解决的技术问题为从应用系统在附件的文件管理角度,在提供用户下载方便的同时,如何确保待下载文件的安全性。技术方案为:该方法包括以下步骤:(1)、应用服务器端安装IIS,IIS作为web服务器,并部署应用软件系统;(2)、在应用软件系统上部署应用服务器端文件读写web服务;(3)、在应用服务器端设置文件读取目录;(4)、待下载文件保存在应用服务器端的路径下;(5)、应用服务器端的后台通过批处理对待下载文件进行密码压缩处理;(6)、应用软件系统的下载功能模块调用web服务。
Description
技术领域
本发明涉及互联网环境中,文件下载安全的技术领域,具体地说是一种基于HTTP传输协议文件读写服务的下载方法。
背景技术
近年来随着斯诺登事件的发酵,网络信息安全,再一次成为软件系统建设中必不可少的考量因素。
.Net框架(.NET框架(.NETFramework)是由微软开发,一个致力于敏捷软件开发(Agilesoftwaredevelopment)、快速应用开发(Rapidapplicationdevelopment)、平台无关性和网络透明化的软件开发平台。.NET包含许多有助于互联网和内部网应用迅捷开发的技术。.NET框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境。.NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的各应用程序之间,可以使用Web服务进行沟通。从层次结构来看,.NET框架又包括三个主要组成部分:公共语言运行时(CLR:CommonLanguageRuntime)、服务框架(ServicesFramework)和上层的两类应用模板——传统的Windows应用程序模板(WinForms)和基于ASPNET的面向Web的网络应用程序模板(WebForms和WebServices))下,基于IIS为web服务器(Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个Web服务器是ApacheNginxIIS),以配置虚拟目录的手段,将系统发布部署。该技术手段在带来系统发布部署便利性的同时,也带来了系统下的资源文件通过网络可以被访问的风险。而当前大中型业务应用系统的附件管理,大多采用文件的形式保存在应用服务器端应用系统部署目录下,文件的下载则是通过文件URL路径的形成文件流技术手段实现,该方法存在通过网络抓包分析等技术手段,获取待下载文件的风险。
专利号为CN104363271A的专利文献公开了一种文件断点续传方法及装置,所述方法包括:接收待下载文件的下载指令信息,根据所述下载指令信息在本地存储器中获取所述待下载文件对应的已下载数据;计算所述已下载数据的报文摘要信息;在所述报文摘要信息与传输中断时存储的报文摘要信息相同时,从断点处起下载所述待下载文件的未下载数据。虽然该专利能够实现文件断点续传,可是不能确保待下载文件的安全性。
故从应用系统在附件的文件管理角度,在提供用户下载方便的同时,如何确保待下载文件的安全性是目前急需解决的技术问题。
发明内容
本发明的技术任务是针对以上不足之处,提供一种基于HTTP传输协议文件读写服务的下载方法,来解决从应用系统在附件的文件管理角度,在提供用户下载方便的同时,如何确保待下载文件的安全性的问题。
本发明解决其技术问题所采用的技术方案是:一种基于HTTP传输协议文件读写服务的下载方法,该方法包括以下步骤:
(1)、应用服务器端安装IIS,IIS作为web服务器,并部署应用软件系统;
(2)、在应用软件系统上部署应用服务器端文件读写web服务;
(3)、在应用服务器端设置文件读取目录;
(4)、待下载文件保存在应用服务器端的路径下;
(5)、应用服务器端的后台通过批处理对待下载文件进行密码压缩处理;
(6)、应用软件系统的下载功能模块调用web服务;
(7)、应用软件系统给下载功能模块分配操作权限;
(8)、下载功能模块对分配操作权限的文件类型的文件进行下载;
(9)、文件下载完成后,对文件的完整性进行校验。
作为优选,所述步骤(4)中的路径独立于应用软件系统部署的文件夹,IIS虚拟目录中未添加或配置该路径,通过URL的方式无法访问该路径。
更优地,所述步骤(4)中的路径的文件夹权限是新建文件夹时默认的权限,对该文件夹不做任何添加用户以及扩充权限的处理。
作为优选,所述步骤(5)中的应用服务器端对步骤(4)中文件夹下的待下载文件进行密码压缩处理。
更优地,所述步骤(5)中的应用服务器端定期清理步骤(4)中文件夹下指定日期时间段之前的所有文件。
作为优选,所述步骤(8)下载功能模块进行文件下载之前,包括如下步骤:
①、web服务器获取文件信息,包括文件名称、文件大小、文件格式和文件的hash值;
②、web服务器负责获取文件夹下文件格式的文件名集合;
③、web服务器安装文件夹大小,分片读取待下载文件,形成字节流。
更优地,所述步骤(8)中文件下载依托于应用系统软件的权限管理,通过应用软件系统授权用户访问并使用文件下载功能。
更优地,所述步骤(8)中文件下载过程中,支持多线程和断点续传;文件下载的同时,将文件下载的信息保存在应用客户端,在应用客户端保存的文件下载信息的文件名与下载文件同名,特定格式的文件中。
更优地,所述文件断点续传包括如下步骤:
①、文件开始下载;
②、选择文件下载的保存路径;
③、判断状态文件是否存在:
(ⅰ)、如果存在,则执行步骤④;
(ⅱ)、如果不存在,则执行步骤⑤;
④、判断待下载文件的拆分文件是否存在:
(ⅰ)、如果存在,则执行步骤⑦;
(ⅱ)、如果不存在,则执行步骤⑤;
⑤、获取待下载文件大小;
⑥、判断是否启动多线程:
(ⅰ)、如果是,则执行步骤⑦;
(ⅱ)、如果不是,则执行步骤⑩;
⑦、产生同名的文件格式带后缀的临时文件;
⑧、判断是否完成下载:
(ⅰ)、如果完成下载,则执行步骤⑨;
(ⅱ)、如果未完成下载,则执行步骤②;
⑨、文件合并;
⑩、文件hash值与源文件是否一致:
(ⅰ)、如果一致,则执行步骤
(ⅱ)、如果不一致,则放弃该文件;
输入密码解压提取文件;
文件下载完成。
作为优选,所述步骤(9)中文件下载完成之后,包括如下步骤:
①、对应用客户端和应用服务器端文件的hash值进行校验,避免文件传输过程中,由于木马或病毒的因素,导致文件内容发生变更;
②、文件下载完成后,用户根据文件解压密码,对文件解压缩,查看文件。
本发明的一种基于HTTP传输协议文件读写服务的下载方法和现有技术相比,具有以下有益效果:
1、本发明提供一种安全性的文件下载方法,应用软件系统在提供文件下载功能的同时保证待下载文件的网络安全,方便用户安全下载文件;
2、本发明是基于HTTP传输协议,IIS作为web服务器,完成文件下载,有效解决互联网环境中,待下载文件的数据安全性的问题。
故本发明设计合理、结构简单、易于加工、体积小、使用方便、一物多用等特点,因而,具有很好的推广使用价值。
附图说明
下面结合附图对本发明进一步说明。
附图1为一种基于HTTP传输协议文件读写服务的断点续传流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明的一种基于HTTP传输协议文件读写服务的下载方法,该方法包括以下步骤:
(1)、应用服务器端安装IIS,IIS作为web服务器,并部署应用软件系统;
(2)、在应用软件系统上部署应用服务器端文件读写web服务;
(3)、在应用服务器端设置文件读取目录;
(4)、待下载文件保存在应用服务器端的路径下;
(5)、应用服务器端的后台通过批处理对待下载文件进行密码压缩处理;
(6)、应用软件系统的下载功能模块调用web服务;
(7)、应用软件系统给下载功能模块分配操作权限;
(8)、下载功能模块对分配操作权限的文件类型的文件进行下载;
(9)、文件下载完成后,对文件的完整性进行校验。
步骤(4)中该路径是可以根据配置文件进行配置,并且不在应用软件系统部署的目录下,没有通过添加虚拟目录等手段,使得该文件夹可以通过网络路径访问。该文件夹的权限,采用的是操作系统新建文件夹的默认权限,对该文件夹不做任何添加用户以及扩充权限的处理,务必去除掉everyone以及IIS匿名访问用户。
步骤(5)中应用服务器端通过调用批处理对该文件夹下的非压缩包文件进行指定密码压缩处理,长度保持在20至30位,文件压缩后删除源文件。这个地方不推荐使用对称加密等手段。因为待下载文件有的文件大小比较大,对称加密解密比较耗时耗力。
加密方式压缩文件bat内容如下:
"C:\ProgramFiles\WinRAR\winrar.exe"a-p123-agYYYYMMDD-df-ep1"D:\CWDIPDBFILE\.rar"
"D:\CWDIPDBFILE\%date:~0,4%%date:~5,2%%date:~8,2%.dmp"
步骤(8)该服务是基于http传输协议,在现有应用软件系统中增加个下载功能。该功能依托于现有应用软件系统的权限管理,实现了控制什么人可以进行操作。文件流的形成的技术手段是完全基于文件的读写,读取指定位置开始,指定长度的文件内容形成字节流。接口内容如下:
应用客户端发起下载文件请求后,应用服务器端后台根据文件大小以及文件分包依据(这里是10kb内容分成一个包),启用多线程技术,调用文件下载服务。例如,一个文件5G,文件名称叫做学习指南.rar,应用服务器端启用5个线程,分别为线程1,线程2,···线程5,这5个线程分别从0-9kb,10-19kb,20-29kb,30-39kb,40-49kb处获取文件内容,将文件内容写到应用客户端指定路径下,应用客户端此时对应有5个文件,文件下载结束后,合并文件内容。当下载进程中断时,会在应用客户端写个同文件名称,不同文件后缀的记录文件,记载当前文件下载位置,方便文件断点续传。
如附图1所示,文件断点续传包括如下步骤:
①、文件开始下载;
②、选择文件下载的保存路径;
③、判断状态文件是否存在:
(ⅰ)、如果存在,则执行步骤④;
(ⅱ)、如果不存在,则执行步骤⑤;
④、判断待下载文件的拆分文件是否存在:
(ⅰ)、如果存在,则执行步骤⑦;
(ⅱ)、如果不存在,则执行步骤⑤;
⑤、获取待下载文件大小;
⑥、判断是否启动多线程:
(ⅰ)、如果是,则执行步骤⑦;
(ⅱ)、如果不是,则执行步骤⑩;
⑦、产生同名的文件格式带后缀的临时文件;
⑧、判断是否完成下载:
(ⅰ)、如果完成下载,则执行步骤⑨;
(ⅱ)、如果未完成下载,则执行步骤②;
⑨、文件合并;
⑩、文件hash值与源文件是否一致:
(ⅰ)、如果一致,则执行步骤
(ⅱ)、如果不一致,则放弃该文件;
输入密码解压提取文件;
文件下载完成。
步骤(9)中文件下载完成之后,包括如下步骤:
①、对应用客户端和应用服务器端文件的hash值进行校验,避免文件传输过程中,由于木马或病毒的因素,导致文件内容发生变更;确保文件传输环节没有因为病毒或木马等因素发生文件篡改,进而确认文件完成性。
②、文件下载完成后,用户根据文件解压密码,对文件解压缩,查看文件。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的一种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (10)
1.一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:该方法包括以下步骤:
(1)、应用服务器端安装IIS,IIS作为web服务器,并部署应用软件系统;
(2)、在应用软件系统上部署应用服务器端文件读写web服务;
(3)、在应用服务器端设置文件读取目录;
(4)、待下载文件保存在应用服务器端的路径下;
(5)、应用服务器端的后台通过批处理对待下载文件进行密码压缩处理;
(6)、应用软件系统的下载功能模块调用web服务;
(7)、应用软件系统给下载功能模块分配操作权限;
(8)、下载功能模块对分配操作权限的文件类型的文件进行下载;
(9)、文件下载完成后,对文件的完整性进行校验。
2.根据权利要求1所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(4)中的路径独立于应用软件系统部署的文件夹,IIS虚拟目录中未添加或配置该路径,通过URL的方式无法访问该路径。
3.根据权利要求1或2所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(4)中的路径的文件夹权限是新建文件夹时默认的权限,对该文件夹不做任何添加用户以及扩充权限的处理。
4.根据权利要求1所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(5)中的应用服务器端对步骤(4)中文件夹下的待下载文件进行密码压缩处理。
5.根据权利要求4所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(5)中的应用服务器端定期清理步骤(4)中文件夹下指定日期时间段之前的所有文件。
6.根据权利要求1所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(8)下载功能模块进行文件下载之前,包括如下步骤:
①、web服务器获取文件信息,包括文件名称、文件大小、文件格式和文件的hash值;
②、web服务器负责获取文件夹下文件格式的文件名集合;
③、web服务器安装文件夹大小,分片读取待下载文件,形成字节流。
7.根据权利要求6所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(8)中文件下载依托于应用系统软件的权限管理,通过应用软件系统授权用户访问并使用文件下载功能。
8.根据权利要求7所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(8)中文件下载过程中,支持多线程和断点续传;文件下载的同时,将文件下载的信息保存在应用客户端,在应用客户端保存的文件下载信息的文件名与下载文件同名。
9.根据权利要求8所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述文件断点续传包括如下步骤:
①、文件开始下载;
②、选择文件下载的保存路径;
③、判断状态文件是否存在:
(ⅰ)、如果存在,则执行步骤④;
(ⅱ)、如果不存在,则执行步骤⑤;
④、判断待下载文件的拆分文件是否存在:
(ⅰ)、如果存在,则执行步骤⑦;
(ⅱ)、如果不存在,则执行步骤⑤;
⑤、获取待下载文件大小;
⑥、判断是否启动多线程:
(ⅰ)、如果是,则执行步骤⑦;
(ⅱ)、如果不是,则执行步骤⑩;
⑦、产生同名的文件格式带后缀的临时文件;
⑧、判断是否完成下载:
(ⅰ)、如果完成下载,则执行步骤⑨;
(ⅱ)、如果未完成下载,则执行步骤②;
⑨、文件合并;
⑩、文件hash值与源文件是否一致:
(ⅰ)、如果一致,则执行步骤;
(ⅱ)、如果不一致,则放弃该文件;
输入密码解压提取文件;
文件下载完成。
10.根据权利要求1所述的一种基于HTTP传输协议文件读写服务的下载方法,其特征在于:所述步骤(9)中文件下载完成之后,包括如下步骤:
①、对应用客户端和应用服务器端文件的hash值进行校验,避免文件传输过程中,由于木马或病毒的因素,导致文件内容发生变更;
②、文件下载完成后,用户根据文件解压密码,对文件解压缩,查看文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610184031.6A CN105635186B (zh) | 2016-03-28 | 2016-03-28 | 一种基于http传输协议文件读写服务的下载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610184031.6A CN105635186B (zh) | 2016-03-28 | 2016-03-28 | 一种基于http传输协议文件读写服务的下载方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105635186A true CN105635186A (zh) | 2016-06-01 |
CN105635186B CN105635186B (zh) | 2018-07-24 |
Family
ID=56049674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610184031.6A Active CN105635186B (zh) | 2016-03-28 | 2016-03-28 | 一种基于http传输协议文件读写服务的下载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105635186B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992626A (zh) * | 2017-12-25 | 2018-05-04 | 深圳市分期乐网络科技有限公司 | 缓存清理方法、装置、终端及存储介质 |
CN108733381A (zh) * | 2018-03-30 | 2018-11-02 | 四川九阵科技股份有限公司 | 一种医疗软件的免安装部署方法 |
CN112583889A (zh) * | 2020-11-18 | 2021-03-30 | 京信数据科技有限公司 | 一种大文件传输的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6868403B1 (en) * | 1998-02-06 | 2005-03-15 | Microsoft Corporation | Secure online music distribution system |
CN101515947A (zh) * | 2009-02-17 | 2009-08-26 | 浙江大学 | 基于p2p的文件快速安全分发方法及系统 |
CN101651714A (zh) * | 2009-07-16 | 2010-02-17 | 深圳市酷开网络科技有限公司 | 下载方法及相关系统和设备 |
CN103546428A (zh) * | 2012-07-10 | 2014-01-29 | 新华瑞德(北京)网络科技有限公司 | 文件的处理方法及装置 |
CN104471918A (zh) * | 2014-03-24 | 2015-03-25 | 华为技术有限公司 | 文件下载方法、装置和系统 |
-
2016
- 2016-03-28 CN CN201610184031.6A patent/CN105635186B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6868403B1 (en) * | 1998-02-06 | 2005-03-15 | Microsoft Corporation | Secure online music distribution system |
CN101515947A (zh) * | 2009-02-17 | 2009-08-26 | 浙江大学 | 基于p2p的文件快速安全分发方法及系统 |
CN101651714A (zh) * | 2009-07-16 | 2010-02-17 | 深圳市酷开网络科技有限公司 | 下载方法及相关系统和设备 |
CN103546428A (zh) * | 2012-07-10 | 2014-01-29 | 新华瑞德(北京)网络科技有限公司 | 文件的处理方法及装置 |
CN104471918A (zh) * | 2014-03-24 | 2015-03-25 | 华为技术有限公司 | 文件下载方法、装置和系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992626A (zh) * | 2017-12-25 | 2018-05-04 | 深圳市分期乐网络科技有限公司 | 缓存清理方法、装置、终端及存储介质 |
CN108733381A (zh) * | 2018-03-30 | 2018-11-02 | 四川九阵科技股份有限公司 | 一种医疗软件的免安装部署方法 |
CN112583889A (zh) * | 2020-11-18 | 2021-03-30 | 京信数据科技有限公司 | 一种大文件传输的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105635186B (zh) | 2018-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6800184B2 (ja) | ドキュメント管理及びコラボレーション・システム | |
JP5783630B2 (ja) | 複合リソース文書上のデジタル署名 | |
JP5956432B2 (ja) | ウェブベースの電子署名文書 | |
US20080147671A1 (en) | System for Running Web Applications Offline and Providing Access to Native Services | |
US9143633B2 (en) | Browser-based scanning utility | |
EP2717542B1 (en) | Application management method and application platform | |
WO2016124013A1 (zh) | 一种用于动态实现应用功能的方法和装置 | |
JP2003514279A (ja) | 共有インターネットストレージリソース、そのユーザインタフェースシステム及び方法 | |
CA2351078C (en) | Methods and apparatus for secure content delivery over broadband access networks | |
US8386608B1 (en) | Service scripting framework | |
US20170371625A1 (en) | Content delivery method | |
CN109376133A (zh) | 文件访问方法及文件访问系统 | |
CN105635186A (zh) | 一种基于http传输协议文件读写服务的下载方法 | |
CN104468458B (zh) | 客户工作负载迁移到云环境的方法和系统以及迁移代理 | |
Sanderson | Programming Google App Engine with Python: Build and Run Scalable Python Apps on Google's Infrastructure | |
US20110154033A1 (en) | Online storage service system and its data control method | |
US7668905B2 (en) | Method, system and computer program for providing web pages based on client state | |
CN104639599A (zh) | 一种实现文件批量下载的系统及方法 | |
CN101751258B (zh) | 智能卡与智能卡应用的开发方法、开发系统及部署方法 | |
CN103401931A (zh) | 一种下载文件的方法和系统 | |
CN108156009B (zh) | 一种服务调用方法及装置 | |
US9037684B1 (en) | Distribution network providing customized content at delivery | |
US9621630B2 (en) | Distribution method, distribution apparatus, and terminal apparatus | |
US10785335B2 (en) | Secure and private web browsing system and method | |
CN111651416A (zh) | Sketch项目文件上传预览方法、系统、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |