1.原理
主要过程涉及三个元素的定义,如下:
//用于承载一系列方法的对象 var funObj = {}; //用于根据条件执行funObj中的方法 var app = function(){}; //用于向funObj添加方法 app.get = function(){};
2.具体实现
a. 路由框架的封装(route.js)
//========================== // 类似express的路由框架 //========================== var url = require(‘url‘); //用于承载一系列方法的对象 var funObj = {}; //用于根据条件执行funObj中的方法 var app = function(req,res){ var pathName = url.parse(req.url).pathname; if(funObj[pathName]){ funObj[pathName](req,res); }else{ res.writeHead(200,{‘content-type‘:‘text/html;charset=utf-8‘}); res.end(‘无有效路由‘); } }; //用于向funObj添加方法 app.get = function(string, callback){ funObj[string] = callback; }; module.exports = app;
b. 框架的调用和执行(index.js)
var http = require(‘http‘); var app = require(‘./route‘); app.get(‘/login‘,function(req,res){ res.end(‘login‘); }) app.get(‘/home‘,function(req,res){ res.end(‘home‘); }) http.createServer(app).listen(8090);
原文地址:https://www.cnblogs.com/zhcBlog/p/10256798.html
时间: 2024-10-09 08:01:07