[发明专利]一种文件传输方法、系统和装置有效
申请号: | 201110264077.6 | 申请日: | 2011-09-07 |
公开(公告)号: | CN102984190A | 公开(公告)日: | 2013-03-20 |
发明(设计)人: | 谢正彪;吴昊 | 申请(专利权)人: | 腾讯数码(天津)有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 张玉波;宋志强 |
地址: | 300457 天津市滨海新区第四*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件传输 方法 系统 装置 | ||
技术领域
本发明涉及文件传输技术领域,尤其涉及一种文件传输方法、系统和装置。
背景技术
超文本传输协议(HyperText Transfer Protocol,HTTP)是互联网上应用最为广泛的一种网络协议。所有的WWW文件传输都遵守HTTP协议。
RFC1867规范主要是在现有的HTTP协议上做出了两处修改,一是为INPUT元素的TYPE属性增加了一个FILE选项,二是INPUT标记可以具有ACCEPT属性,该属性能够指定可被上传的文件类型或文件格式列表。另外,RFC1867规范还定义了一种新的MIME类型:multipart/form-data,以及当处理一个带有ENCTYPE=″multipart/form-data″和/或含有<INPUT type=″file″>的标记的表单时所应该采取的处理过程。
目前RFC1867协议规范中,用户上传一个文件的数据包括HTTP请求头和HTTP实体内容两部分,具体地,上传的文件数据=HTTP请求头+回车换行+HTTP实体内容,下面分别对HTTP请求头和HTTP实体内容进行介绍:
(1)HTTP请求头:
HTTP请求头主要描述了HTTP所传输数据的一些信息,例如主机(Host)、数据内容类型(Content-type)、实体内容总长度(Content-length)等都是HTTP请求头。HTTP请求头里各字段的组织方式为:HTTP头字段名称+:+空格+HTTP头字段信息+回车换行。
下面为HTTP请求头的例子:
其中,Content-Length代表HTTP实体内容的总长度,Content-Type中的boundary表示HTTP实体内容分隔符。
Accept、user-Agent、Referer和Accept-Language是html语言的标准规范,此处不赘述。
(2)HTTP实体内容:
HTTP实体内容由多个form-data内容段组成,各个form-data内容段用“--分隔符”分隔,最后一个“--分隔符--”表示结束。每一个form-data内容段由form-data头描述和form-data实体内容组成,每一个form-data都有一个content-disposition标题头,它的值是″form-data″,它的属性指明了其在表单内的字段名。举例来说,′content-disposition:form-data;name=″div″′,这里的div就是对应于该字段的字段名,该字段的值就是form-data的实体内容。其中,对于文件传输,会有一个特殊的字段名filename,表明传输的是一个文件。
例如:
上面的HTTP实体内容表示的有2个form-data的内容段,第2个form-data的内容段的name=″filename″表明第2个form-data传输的是一个文件,filename=″Royale.jpg″表明第2个form-data传输的文件名称是Royale.jpg。
现有技术对于每一个form-data内容段用“--分隔符”分隔,最后一个“--分隔符--”表示结束,这样的实现会导致服务器段接收到客户请求后,在分析文件内容的时候必须要对整个文件进行字符串比较。这种字符串比较分析的方式效率非常低,特别是当传输的文件较大时(例如一个图片文件或者视频文件),会导致服务器CPU资源大量的消耗。
发明内容
有鉴于此,本发明提供了一种文件传输方法、系统和装置,以便避免服务器对整个传输文件的字符串分析比较的过程,降低服务器在处理客户端上传的文件传输信息时的CPU消耗。
本发明的技术方案具体是这样实现的:
一种文件传输方法,该方法包括:
服务器接收客户端上传的文件传输信息,查询该文件传输信息中是否包含form-data内容段的长度信息,在文件传输信息中包含form-data内容段的长度信息时,服务器根据form-data内容段的长度信息确定form-data内容段的结束位置。
一种文件传输系统,该系统包括服务器和客户端;
所述客户端,用于在文件传输信息中设置form-data内容段的长度信息,将该文件传输信息上传给服务器;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯数码(天津)有限公司,未经腾讯数码(天津)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110264077.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种机床刀具支撑机构
- 下一篇:一种车床机台