JavaScript

超轻量级php框架startmvc

Node.js自定义实现文件路由功能

更新时间:2020-06-07 11:24 作者:startmvc
一、创建路由处理定义//获取http模块varhttp=require('http');//文件模块varfs=require('fs');//404文件var

一、创建路由处理定义


//获取http模块 
var http = require('http'); 
//文件 模块 
var fs = require('fs'); 
//404文件 
var error = "./view/404.html"; 
//实现文件 相应函数以及404错误相应函数 
var Response = function (res, filePath) { 
 //读取 文件,然后给客户端 相应 
 fs.readFile(filePath, function (err, data) { 
 if (err) { 
 if (filePath != error) //如果出错输出404页面 
 Response(res, error); 
 } else { 
 res.writeHead(200, { 'Content-Type': 'text/html' }); 
 res.end(data); 
 } 
 }); 
} 

二、创建服务器 ,监听路由处理


//创建和启动服务器 
var server = http.createServer(function (req, res) { 
 console.info(req.url); 
 //判断 URL,提供 不同的路由 
 var url = req.url; 
 if (url == '/index' || url == '/') { 
 //主页 
 var index = require('../view/index'); 
 index.write(res); 
 } else { 
 //制定文件输出view下的文件内容 
 Response(res, './view' + url); 
 } 
}); 
//启动服务器 
server.listen('3000', function () { 
 var address = server.address(); 
 console.info(address); 
 console.info('服务器启动成功:http://localhost:%s', address.port); 
}); 

三 、首页模块响应


/** 
 * 主页内容响应处理 
 */ 
exports.write=function(res){ 
 res.writeHead(200,{'Content-Type':'text/html'}); 
 res.write('<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'); 
 res.write('<h1>主页内容2</h1>'); 
 res.end(); 
} 

总结

以上所述是小编给大家介绍的Node.js自定义实现文件路由功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!