post.js 中间件开发

上一节,把关键概念和原理弄明白后,开发post.js插件就有切入口了。通过得到post方法请求数据,然后用querystring模块的parse方法就可把字符串形式转换为json格式。

下面是post.js中间源代码:

var qs = require("querystring");

module.exports = function post(req,res,next){

    var body_data =“”;

    req.on("data",function(chunk){
        body_data += chunk;
    })

    req.on("end",function(){
        try{
            req.body = qs.parse(body_data);
        }catch(e){}
        next();
    });
}

然后在stuwebfk/index.js中加入以下代码:

exports.App = require("./lib/App");
exports.static = require("./lib/static");
exports.query = require("./lib/query");

exports.post = require("./lib/post");

post.js中间件,可以让stuwebfk框架具有req.body属性。而req.query只能接收小数据,req.body却可以接受大数据,比如博客文章的表单提交都是通过POST方法请求,进行提交的。下一节,利用post.js插件做个例子。