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 相关文章推荐
在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
Dec 20 Javascript
javascript window.confirm确认 取消对话框实现代码小结
Oct 21 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
Apr 29 Javascript
JS实现控制表格行内容垂直对齐的方法
Mar 30 Javascript
js获取表格的行数和列数的方法
Oct 23 Javascript
基于HTML+CSS,jQuery编写的简易计算器后续(添加了键盘监听)
Jan 05 Javascript
在Vue组件中使用 TypeScript的方法
Feb 28 Javascript
vue实现可视化可拖放的自定义表单的示例代码
Mar 20 Javascript
jQuery - AJAX load() 实例用法详解
Aug 27 jQuery
BootstrapValidator验证用户名已存在(ajax)
Nov 08 Javascript
js实现鼠标拖拽div左右滑动
Jan 15 Javascript
vue递归实现树形组件
Jul 15 Vue.js
详解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 goto语句用法实例
2019/08/06 PHP
Google Map API更新实现用户自定义标注坐标
2009/07/29 Javascript
javascript多种数据类型表格排序代码分析
2010/09/11 Javascript
收集的一些Array及String原型对象的扩展实现代码
2010/12/05 Javascript
JavaScript中的Array对象使用说明
2011/01/17 Javascript
EXT窗口Window及对话框MessageBox
2011/01/27 Javascript
最新28个很棒的jQuery 教程
2011/05/28 Javascript
javascript中常用编程知识
2013/04/08 Javascript
JS正则表达式获取分组内容的方法详解
2013/11/15 Javascript
ExtJS自定义主题(theme)样式详解
2013/11/18 Javascript
js数组去重的常用方法总结
2014/01/24 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
node.js操作mysql(增删改查)
2015/07/24 Javascript
Webpack实现按需打包Lodash的几种方法详解
2017/05/08 Javascript
JS+jQuery实现注册信息的验证功能
2017/09/26 jQuery
vue动画之点击按钮往上渐渐显示出来的实例
2018/09/29 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
vue微信分享到朋友圈 vue微信发送给好友
2018/11/28 Javascript
vue+elementUI实现表单和图片上传及验证功能示例
2019/05/14 Javascript
详解Vue数据驱动原理
2020/11/17 Javascript
python类定义的讲解
2013/11/01 Python
python数据结构之二叉树的统计与转换实例
2014/04/29 Python
深入理解Python中装饰器的用法
2016/06/28 Python
python实现屏保计时器的示例代码
2018/08/08 Python
python 在屏幕上逐字显示一行字的实例
2018/12/24 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
2019/08/06 Python
Python模块相关知识点小结
2020/03/09 Python
Html5移动端弹幕动画实现示例代码
2018/08/27 HTML / CSS
KIEHL’S科颜氏官方旗舰店:源自美国的顶级护肤品牌
2018/06/07 全球购物
美国医生配方营养补充剂供应商:Healthy Directions
2019/07/10 全球购物
十岁生日同学答谢词
2014/01/19 职场文书
安全大检查反思材料
2014/01/31 职场文书
女子职高个人自荐书
2014/02/01 职场文书
幼儿园小班教师寄语
2014/04/03 职场文书
优秀班主任推荐材料
2014/12/17 职场文书
Pygame Time时间控制的具体使用详解
2021/11/17 Python