发明名称 一种从浏览器向服务器发送文件的方法
摘要 本发明一种从浏览器向服务器发送文件的方法属于互联网通讯技术领域,本发明技术方案为从浏览器将程序算法选定的文件的二进制内容以及相关信息以特定的结构顺序组合成为一个整体的二进制数据流,使用XML HTTP向WEB服务器发送该二进制数据流,WEB服务器完成接收数据并保存成本地数据,本发明的优点为发送的文件可由程序算法决定,而不需要用户逐一指定。
申请公布号 CN105306523A 申请公布日期 2016.02.03
申请号 CN201510505579.1 申请日期 2015.08.17
申请人 成都飞机设计研究所 发明人 周安宁;罗小琦;龙斌;巫鹏伟;颜民;朱玉洪
分类号 H04L29/08(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 中国航空专利中心 11008 代理人 杜永保
主权项 一种从浏览器向服务器发送文件的方法,其特征在于,该方法采取以下步骤:1)在浏览器端组装一段二进制数据流,该二进制数据流包含需要发送的文件数据,二进制数据流FullStream由组合数据流CompositeStream、文件数据流FileStream、信息部分InformationSegment和数据部分嵌套组合而成其组合关系如下:a)二进制数据流FullStream的构建;由“/r/n”对组合数据流CompositeStream进行首尾包裹,得到的结果再以边界符Boundary进行首尾包裹,最后以“‑‑/r/n”结束,即:FullStream=Boundary+”/r/n”+CompositeStream+”/r/n”+Boundary+”‑‑/r/n”其中:/r为回车符;/n为换行符;边界符Boundary为随机产生的以“‑‑”字符开头的一串字符;b)组合数据流CompositeStream由需要发送的文件数据流FileStream组合而成,各文件数据流之间以“/r/n”、边界符Boundary和“/r/n”连接,即:CompositeStream=FileStream+(”/r/n”+Boundary+”/r/n”+FileStream)*n;n=0,1,2…其中,n+1代表需要发送的文件数;c)文件数据流FileStream包含两部分:信息部分InformationSegment和数据部分ContentSegment,这两部分以“/r/n/r/n”进行连接,即:FileStream=InformationSegment+”/r/n/r/n”+ContentSegmentd)信息部分InformationSegment内容为:Content‑Disposition:form‑data;name="FormName";filename=”filename.sufix”/r/nSomeInformation”其中:FormName是随机产生的一段字符;filename.sufix为可带后缀的文件名称,;SomeInformation定义为关于本文件的属性信息,信息部分不包含字符编码类型信息;e)数据部分ContentSegment为文件的二进制数据内容;2)使用XML HTTP请求向接收文件的页面发送二进制流数据FullStream,其中XML HTTP请求的“boundary”头属性值使用上述边界符Boundary去除首部的“‑‑”;3)页面服务器用处理Form元素的请求的方法接收需要传输的文件。
地址 610091 四川省成都市青羊区日月大道1610号成都飞机设计研究所计划发展部