第7天 Post方法与上传——切割分类数据
现在要切割并分类上传来的数据,首先就要解析出边界字符串,通过边界字符串,可以把上传的数据按照字段进行分割。
切割分类数据
现在要切割并分类上传来的数据,首先就要解析出边界字符串,通过边界字符串,可以把上传的数据按照字段进行分割。
从 content-type 中解析出boundary边界字符串
解析代码如下:
var contentType = req.headers["content-type"]; /(boundary=)/gi.test(contentType); // boundary 就是边界字符串 -----------------------------7ddc8352a02ea var boundary = RegExp["$'"];
OK,我们有了边界字符串,就可以利用它进行分割工作了;不过值得注意的是,boundary前面还要加上两个"-",而结尾的边界字符串是最特殊的,因为他还要在后面加上两个"-",另外边界字符串结尾都跟着"\r\n"(除了结尾边界字符串)。所以我们还要定义两个变量,boundaryStandard和boundaryEnd,分别代表一般边界字符串和结尾边界字符串。代码如下:
var boundaryStandard = "--"+boundary+"\r\n"; var boundaryEnd = boundaryStandard+"--";
去掉头尾边界字符串
为了方便下一步的工作,我们要删除头尾的边界字符串,body_data是个字符串形式的数据,保存着整个上传的body体数据。
//删除头尾边界字符串 body_data = body_data.substring(boundaryStandard.length,body_data.length-boundaryEnd.length);
OK,现在的body_data已去掉头尾边界字符串了,下一步就要用字符串的split方法把数据按照字段分割,分割后保存在一个数组中。
var fields = body_data.split(boundaryStandard);
有了fileds,就可以单独处理字段数据了。处理这些字段数据的过程,我们叫它解析。下一节解析这些分割后的数据,也就是fileds。
很赞哦! ( 0
)
相关文章
- JS小技巧集锦(不断更新...)
- nodeJs基础教程系列(8)——流
- nodeJs基础教程系列(9)——CO库
- nodeJs基础教程系列(4)——CommonJS规范
- nodeJs基础教程系列(7)——generator
- [转]让你的 Node.js 应用跑得更快的 10 个技巧
- Node.js API实例——Node.js 控制台
- Node.js 入门
- nodeJs基础教程系列(3)——建立githubs项目
- nodeJs基础教程系列(1)——安装Node.js
- nodeJs基础教程系列(6)——Promise 模式的Q库
- Atom 更为先进的文本代码编辑器 - 由 Github 打造的下一代编程开发利器