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


Posted in Javascript onSeptember 22, 2017

一、创建路由处理定义

//获取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); 
});

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

三 、首页模块响应

/** 
 * 主页内容响应处理 
 */ 
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自定义实现文件路由功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
从零学jquery之如何使用回调函数
May 16 Javascript
jQuery学习笔记之 Ajax操作篇(二) - 数据传递
Jun 23 Javascript
利用JavaScript阻止表单提交的两种方法
Aug 11 Javascript
jquery点击切换背景色的简单实例
Aug 25 Javascript
详解微信小程序开发之下拉刷新 上拉加载
Nov 24 Javascript
jQuery实现优雅的弹窗效果(6)
Feb 08 Javascript
jQuery中用on绑定事件时需注意的事项
Mar 19 Javascript
老生常谈javascript的面向对象思想
Aug 22 Javascript
jQuery中.attr()和.data()的区别分析
Sep 03 jQuery
微信小程序MUI导航栏透明渐变功能示例(通过改变rgba的a值实现)
Jan 24 Javascript
JavaScript实现动态留言板
Mar 16 Javascript
vscode+gulp轻松开发小程序的完整步骤
Oct 18 Javascript
详解bootstrap用dropdown-menu实现上下文菜单
Sep 22 #Javascript
javascript计算渐变颜色的实例
Sep 22 #Javascript
利用Node.js了解与测量HTTP所花费的时间详解
Sep 22 #Javascript
原生JS实现日历组件的示例代码
Sep 22 #Javascript
BootstrapTable加载按钮功能实例代码详解
Sep 22 #Javascript
Bootstrap Table 删除和批量删除
Sep 22 #Javascript
jQury Ajax使用Token验证身份实例代码
Sep 22 #Javascript
You might like
PHP 和 COM
2006/10/09 PHP
一个php作的文本留言本的例子(五)
2006/10/09 PHP
用javascript实现页面打印的三种方法
2007/03/05 Javascript
COM中获取JavaScript数组大小的代码
2009/11/22 Javascript
javascript 动态生成私有变量访问器
2009/12/06 Javascript
javascript 动态设置已知select的option的value值的代码
2009/12/16 Javascript
js下通过getList函数实现分页效果的代码
2010/09/17 Javascript
JQuery与JSon实现的无刷新分页代码
2011/09/13 Javascript
js取消单选按钮选中示例代码
2013/11/14 Javascript
IE和Firefox之间在JavaScript语法上的差异
2016/04/22 Javascript
vue实现nav导航栏的方法
2017/12/13 Javascript
bootstrap 点击空白处popover弹出框隐藏实例
2018/01/24 Javascript
vue2单元测试环境搭建
2018/05/24 Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
2018/07/18 Javascript
详解Vue.js在页面加载时执行某个方法
2018/11/20 Javascript
ES6知识点整理之模块化的应用详解
2019/04/15 Javascript
Apache如何部署django项目
2017/05/21 Python
Python将DataFrame的某一列作为index的方法
2018/04/08 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
浅谈Series和DataFrame中的sort_index方法
2018/06/07 Python
Python爬虫实现简单的爬取有道翻译功能示例
2018/07/13 Python
使用python对文件中的数值进行累加的实例
2018/11/28 Python
Python判断对象是否相等及eq函数的讲解
2019/02/25 Python
英国领先的在线旅游和休闲零售商:lastminute.com
2019/01/23 全球购物
建筑专业自我鉴定
2013/10/22 职场文书
写好自荐信的技巧
2013/11/08 职场文书
初三化学教学反思
2014/01/23 职场文书
公司外出活动方案
2014/08/14 职场文书
预备党员转正思想汇报
2014/09/26 职场文书
一年级语文下册复习计划
2015/01/17 职场文书
2015学校年度工作总结
2015/05/11 职场文书
2016党员发展对象培训心得体会
2016/01/08 职场文书
2016教师校本研修心得体会
2016/01/08 职场文书
pytorch中的torch.nn.Conv2d()函数图文详解
2022/02/28 Python
React四级菜单的实现
2022/04/08 Javascript
Android实现图片九宫格
2022/06/28 Java/Android