express框架封装前戏

一.开启一文件,这里暂且命名为aexpressclass.js

  • 声明一个app类,用来模仿http模块中的回调函数
//var route = require('http-route');
var url = require('url');
//var app = new route();
var G = {};
var app = function(req,res)
{
    var myurl = url.parse(req.url);
    var pathname = myurl.pathname;
//为了迎合解析后的路径带有'/'的情形,索性给参数加上'/'
if(!pathname.endsWith('/')) { pathname=pathname+"/"; } if(G[pathname]) { G[pathname](req,res); } };
  • 定义app对象的get方法    //为了迎合解析后的路径带有'/'的情形,索性给参数加上'/'
app.get=function(string,callback)
{

  if (!string.endsWith("/")) {
string = string + "/";
    }
    if(!string.startsWith("/"))
    {
        string = "/"+string;
    }
    G[string]=callback;
};
  • 实现访问相关路径的功能
app.get('login',function (req,res) {
    console.log("login"+req);
    res.end('login');
});
app.get('register',function (req,res) {
    console.log('register');
    res.end('register');
});
module.exports = app;

二.再声明一个文件(暂且命名为expserver.js)

  • 调用
var app = require('./aexpressclass');
var http = require('http');
http.createServer(app).listen(3000);

猜你喜欢

转载自www.cnblogs.com/saintdingspage/p/11875046.html