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判断单个复选框是否被选中的代码
Sep 03 Javascript
js中的push和join方法使用介绍
Oct 08 Javascript
原生js做的手风琴效果的导航菜单
Nov 08 Javascript
ff下JQuery无法监听input的keyup事件的解决方法
Dec 12 Javascript
jquery插件开发之实现google+圈子选择功能
Mar 10 Javascript
Bootstrap~多级导航(级联导航)的实现效果【附代码】
Mar 08 Javascript
Ionic+AngularJS实现登录和注册带验证功能
Feb 09 Javascript
JS实现批量上传文件并显示进度功能
Jun 27 Javascript
js 两个日期比较相差多少天的实例
Oct 19 Javascript
Vue 中批量下载文件并打包的示例代码
Nov 20 Javascript
使用JavaScript实现网页秒表功能(含开始、暂停、继续、重置功能)
Jun 05 Javascript
在HTML中使用JavaScript的两种方法
Dec 24 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利用str_replace防注入的方法
2013/11/10 PHP
thinkphp验证码显示不出来的解决方法
2014/03/29 PHP
基于php编程规范(详解)
2017/08/17 PHP
Javascript attachEvent传递参数的办法
2009/12/14 Javascript
关于JavaScript定义类和对象的几种方式
2010/11/09 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
运算符&amp;&amp;的三个不同层次
2013/04/07 Javascript
JavaScript对IE操作的经典代码(推荐)
2014/03/10 Javascript
Jquery实现Div上下移动示例
2014/04/23 Javascript
javascript函数声明和函数表达式区别分析
2014/12/02 Javascript
jQuery实现类似标签风格的导航菜单效果代码
2015/08/25 Javascript
jQuery实现从身份证号中获取出生日期和性别的方法分析
2016/02/25 Javascript
AngularJS基础 ng-mouseleave 指令详解
2016/08/02 Javascript
jQuery ready()和onload的加载耗时分析
2016/09/08 Javascript
清除浏览器缓存的几种方法总结(必看)
2016/12/09 Javascript
AngularJS过滤器filter用法总结
2016/12/13 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
2017/02/23 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
AngularJS遍历获取数组元素的方法示例
2017/11/11 Javascript
json前后端数据交互相关代码
2018/09/19 Javascript
详解JavaScript的this指向和绑定
2020/09/08 Javascript
python获取局域网占带宽最大3个ip的方法
2015/07/09 Python
Python实现PS滤镜Fish lens图像扭曲效果示例
2018/01/29 Python
Python 实现两个列表里元素对应相乘的方法
2018/11/14 Python
python网络编程 使用UDP、TCP协议收发信息详解
2019/08/29 Python
python二进制读写及特殊码同步实现详解
2019/10/11 Python
python主要用于哪些方向
2020/07/05 Python
python-地图可视化组件folium的操作
2020/12/14 Python
会计与审计专业大专生求职信
2013/10/03 职场文书
文秘专业应届生求职信范文
2013/11/14 职场文书
2014年商场超市庆元旦活动方案
2014/02/14 职场文书
关于梦想的演讲稿
2014/05/05 职场文书
2014年置业顾问工作总结
2014/11/17 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
2015年国庆节新闻稿
2015/07/18 职场文书
python实现Nao机器人的单目测距
2021/09/04 Python