-
使用分层思想的优点:
提高扩展性 -
最基本的分层思想是:MVC设计模式
-
使用mvc处理对应的路由
-
将.ejs文件放在views文件夹上;
-
将路由设计的放在controller文件夹上;
-
将数据操作读取文件等操作放在models文件夹上
-
- router.js文件
- 在这里设置对应的路径的响应
- 设置原则:有多少个路径就设置多少个方法用来表示对应的路径的响应
- 暴露函数,一般我们放在最上面。方便别人观看和使用,提高代码的可读性
/*暴露函数
* 一般我们放在最上面
* 方便别人观看和使用,提高代码的可读性*/
exports.showIndex = showIndex;
exports.showStudent = showStudent;
exports.show404 = show404;
/*我们在这里设置对应的路径的响应
* 设置原则:有多少个路径就设置多少个方法用来表示对应的路径的响应*/
/*设置三个方法*/
/*设置显示首页*/
function showIndex(req, res) {
res.writeHead(200,{'Content-Type':'text/html;charset=UTF8'});
res.end('this is index page');
}
/*设置显示学生*/
function showStudent(req, res) {
res.writeHead(200,{'Content-Type':'text/html;charset=UTF8'});
res.end('this is student page');
}
/*设置显示错误*/
function show404(req,res) {
res.writeHead(200,{'Content-Type':'text/html;charset=UTF8'});
res.end('this is 404 page');
}
- 在请求的文件上,导入router.js,在指定路由上调用路由中相应的方法
/*需求:如果当路径是/ 我们显示一个this is index page
* 如果路径的前九位是/student/,显示 this is student page
* 其他的情况显示 this is 404 page*/
/*mvc
* m:用来存放和数据相关的文件
* v:用来存放和视图相关的东西
* c:用来存放对应的路径的请求的响应
* */
var http = require('http');
var router = require('./controller/router.js');
var server = http.createServer(function (req, res) {
if (req.url == '/'){
router.showIndex(req,res);
}
else if(req.url.substr(0,9) == '/student/'){
router.showStudent(req,res);
}else {
router.show404(req,res);
}
});
server.listen(3000,'127.0.0.1');
网友评论