这篇文章主要介绍了Node.js自定义实现文件路由功能的相关资料,需要的朋友可以参考下

一、创建路由处理定义

//获取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自定义实现文件路由功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对爱安网网站的支持!

最新资讯
百度风投近期完成高管变更,前小米战投董事总经理高雪出任CEO

百度风投近期完成高管

近日百度风投(Baidu Ventures)完成了管理人员的调整,前
快手一哥辛巴就“假燕窝”道歉 律师:可要求退货

快手一哥辛巴就“假燕

易观高级分析师陈涛表示,带货主播与代言人所代言的广告
王兴黄峥的社区团购之战:谁先“烧出”未来?

王兴黄峥的社区团购之

社区团购如果未来不转型或升级,最终只是干热闹。
网红第一股退市,张大奕征服不了华尔街

网红第一股退市,张大奕

作为“网红孵化第一股”,如涵的上市引发了不少关注。然
港交所建议将拟IPO企业最低盈利要求从2000万港元提升150%至200%

港交所建议将拟IPO企

据报道,港交所建议将拟IPO企业最低盈利要求从2000万港
中国移动香港实现5G独立组网 助力行业智慧转型

中国移动香港实现5G独

中国移动香港宣布,正式实现商用5G独立组网,助力香港建设
最新文章
详解Vue的ref特性的使用

详解Vue的ref特性的使

这篇文章主要介绍了详解Vue的ref特性的使用,文中通过
vue学习笔记之slot插槽基本用法实例分析

vue学习笔记之slot插

这篇文章主要介绍了vue学习笔记之slot插槽基本用法,结
vue跳转方式(打开新页面)及传参操作示例

vue跳转方式(打开新页

这篇文章主要介绍了vue跳转方式(打开新页面)及传参操作,
vue学习笔记之过滤器的基本使用方法实例分析

vue学习笔记之过滤器

这篇文章主要介绍了vue学习笔记之过滤器的基本使用方
js获取本日、本周、本月的时间代码

js获取本日、本周、本

本篇文章给大家分享的内容是利用js如何获取本日、本周
node crawler如何添加promise支持

node crawler如何添加

这篇文章主要介绍了node crawler如何添加promise支持,