[发明专利]一种基于RFC1867规范的HTTP协议的文件上传方法有效
申请号: | 200810119142.4 | 申请日: | 2008-08-28 |
公开(公告)号: | CN101662484A | 公开(公告)日: | 2010-03-03 |
发明(设计)人: | 王劲林;白鹤;苏孝强 | 申请(专利权)人: | 中国科学院声学研究所 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京法思腾知识产权代理有限公司 | 代理人: | 杨小蓉 |
地址: | 100190北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 rfc1867 规范 http 协议 文件 上传 方法 | ||
1.一种基于RFC1867规范的HTTP协议的文件上传方法,该方法基于 UGiA-PHP-UPLOADER组件的系统架构,实现客户端进度控制、服务器端数据接收、 按照RFC1867协议的即时解析和状态日志读取,包括以下步骤:
(1)浏览器提交的步骤,是指通过浏览器填写基于RFC1867规范、属性设置 为“multipart/form-data”的表单,然后提交到客户端;
(2)客户端的步骤,是指客户端向服务器端上传表单数据并与服务器端通信, 包括:
(21)启动定时器,并初始化XMLHTTP的实例,设置GET方法定时发送异步 请求到服务器端轮询状态,得到Port端口的信息,代表服务器端已做好接收数据准 备;取得父页面表单对象,设置“action”属性为“http://IP:Port”,即设置Port为新上传 端口,开始文件的表单数据的上传;同时,初始化进度条页面:设置抬头信息“开始 上传”,显示服务器端口;
(22)客户端接到数据传送完成信号,重组表单的数据项,将file控件替换成值 为接收文件存放位置的text控件,然后通过HTTP协议向服务器端提交表单;所述 完成信号是包含表单数据的数组数据;
(3)服务器端数据接收处理模块处理的步骤,是指服务器端数据接收处理模块 监听Port端口,接收、解析表单数据,储存数据文件和状态文件,包括以下步骤:
(31)数据接收处理模块采用32位随机数对上传表单命名,然后确定临时文件 存储文件夹的个数P,采用哈希函数对文件进行均匀分配;
(32)服务器端初始化新上传对应的Port端口,将服务器端的IP地址和Port端 口的信息写入状态文件,实例化Socket对象并监听新上传端口Port,表单数据从Port 端口传入并由服务器端数据接收处理模块的UGiA-PHP-UPLOADER组件接收处理;
(33)遵照HTTP协议编写200的响应头,将响应头回复给请求的Port端口对 应的客户端,随后按照一定字节长度循环读取Socket数据流,将读取数据作为一个 单元压入到一定长度的字符队列;
(4)服务器端响应模块响应的步骤,是指服务器端读取状态日志、组织文件信 息和进度数据、回复客户端请求。
2.根据权利要求1所述的文件上传方法,其特征在于,所述步骤(21)的初始 化进度条页面的步骤还包括,客户端定时请求服务器端日志数据,通过DOM接口处 理进度条的即时状态显示的步骤;
所述进度条中显示文件的相关信息包括:上传的文件名和混合数据的长度信息; 所述进度条中显示上传进度的信息包括:上传文件的比例、平均速度和剩余时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院声学研究所,未经中国科学院声学研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810119142.4/1.html,转载请声明来源钻瓜专利网。