nodejs个人博客开发第二步 入口文件


Posted in NodeJs onApril 12, 2017

本文为大家分享了nodejs个人博客开发的入口文件,具体内容如下

错误处理中间件

定义错误处理中间件必须使用4个参数,否则会被作为普通中间件

/*错误处理器*/
application.use(function(err,req,res,next){
 console.error(err.stack);
 res.status(500).send("代码出错了,错误信息:<br/>"+err.stack);
});
/*404*/
application.use(function(req,res,next){
 res.status(404).send("404页面被火星人挖走了");
});

创建文件结构

公共文件夹(common),控制器文件夹(controller),模型文件夹(model),视图文件夹(view),静态资源文件夹(static)

nodejs个人博客开发第二步 入口文件

定义配置文件和函数文件并载入

配置文件common/config.js

/**
* 公共配置文件
*/
module.exports={
 DB_HOST:'localhost',
 DB_NAME:'blog',
 DB_USER:'root',
 DB_PASS:'root',
 DB_PRE:'',
 APP_PORT:'8888'
};

函数文件common/functions.js

/**
* 公共函数文件
*/
module.exports={
 /*模拟php的date()函数*/
 phpDate:function(formatStr,time){
  var paramModel='ymdhis';
  if(!formatStr) formatStr="y-m-d h:i:s";
  
  if(time){
   myDateTime=new Date(time*1000);
  }else{
   myDateTime=new Date();
  }
  var strTimeArr=[
   myDateTime.getFullYear().toString(),
   (myDateTime.getMonth()+1).toString(),
   myDateTime.getDate().toString(),
   myDateTime.getHours().toString(),
   myDateTime.getMinutes().toString(),
   myDateTime.getSeconds().toString(),
  ];
  for(var i=0;i<strTimeArr.length; i++){
   formatStr=formatStr.replace(paramModel.charAt(i), strTimeArr[i]);     
  }
  return formatStr;
 }

};

载入公共文件,定义资源文件

/*载入公共文件,定义资源文件*/
global.C=require("./common/config");
global.F=require("./common/functions"); 
application.use(express.static('public'));

路由级中间件

控制器分为两组home和admin

/*路由级中间件*/
application.use('/',require('./controller/home/index'));
application.use('/admin',require('./controller/admin/index'));

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
基于NodeJS的前后端分离的思考与实践(二)模版探索
Sep 26 NodeJs
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
Sep 26 NodeJs
nodejs教程之异步I/O
Nov 21 NodeJs
深入浅析NodeJs并发异步的回调处理
Dec 21 NodeJs
浅谈Nodejs应用主文件index.js
Aug 28 NodeJs
Nodejs下用submit提交表单提示cannot post错误的解决方法
Nov 21 NodeJs
NodeJs下的测试框架Mocha的简单介绍
Feb 22 NodeJs
CentOS 安装NodeJS V8.0.0的方法
Jun 15 NodeJs
nodejs 子进程正确的打开方式
Jul 03 NodeJs
Nodejs调用Dll模块的方法
Sep 17 NodeJs
nodejs同步调用获取mysql数据时遇到的大坑
Mar 02 NodeJs
nodejs各种姿势断点调试的方法
Jun 18 NodeJs
nodejs个人博客开发第一步 准备工作
Apr 12 #NodeJs
nodejs获取微信小程序带参数二维码实现代码
Apr 12 #NodeJs
详解nodejs微信公众号开发——5.素材管理接口
Apr 11 #NodeJs
详解nodejs微信公众号开发——4.自动回复各种消息
Apr 11 #NodeJs
nodejs连接mysql数据库简单封装示例-mysql模块
Apr 10 #NodeJs
详解nodejs操作mongodb数据库封装DB类
Apr 10 #NodeJs
详解nodejs微信公众号开发——3.封装消息响应模块
Apr 10 #NodeJs
You might like
服务器端解压缩zip的脚本
2006/12/22 PHP
php FLEA中二叉树数组的遍历输出
2012/09/26 PHP
走出JavaScript初学困境—js初学
2008/12/29 Javascript
Jquery练习之表单验证实现代码
2010/12/14 Javascript
JS获取浏览器语言动态加载JS文件示例代码
2014/10/31 Javascript
浏览器兼容性问题大汇总
2015/12/17 Javascript
分享bootstrap学习笔记心得(组件及其属性)
2017/01/11 Javascript
深入nodejs中流(stream)的理解
2017/03/27 NodeJs
Angular.js去除页面中显示的空行方法示例
2017/03/30 Javascript
Vue CLI3中使用compass normalize的方法
2019/05/30 Javascript
微信小程序中button去除默认的边框实例代码
2019/08/01 Javascript
微信小程序 调用远程接口 给全局数组赋值代码实例
2019/08/13 Javascript
jQuery HTML设置内容和属性操作实例分析
2020/05/20 jQuery
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[57:22]完美世界DOTA2联赛PWL S2 FTD vs PXG 第二场 11.27
2020/12/01 DOTA
Python linecache.getline()读取文件中特定一行的脚本
2008/09/06 Python
python实现简单爬虫功能的示例
2016/10/24 Python
ubuntu系统下 python链接mysql数据库的方法
2017/01/09 Python
python基于itchat实现微信群消息同步机器人
2017/02/27 Python
用Python进行简单图像识别(验证码)
2018/01/19 Python
python实现RabbitMQ的消息队列的示例代码
2018/11/08 Python
如何使用django的MTV开发模式返回一个网页
2019/07/22 Python
Python3的unicode编码转换成中文的问题及解决方案
2019/12/10 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
H5新属性audio音频和video视频的控制详解(推荐)
2016/12/09 HTML / CSS
英国最大的女性服装零售商:Dorothy Perkins
2017/03/30 全球购物
丝绸和人造花卉、植物和树木:Nearly Natural
2018/11/28 全球购物
eBay奥地利站:eBay.at
2019/07/24 全球购物
大学学年自我鉴定
2013/10/28 职场文书
车间工艺员岗位职责
2013/12/09 职场文书
简历自我评价模版
2014/01/31 职场文书
《金子》教学反思
2014/04/13 职场文书
学校四风问题对照检查材料思想汇报
2014/09/26 职场文书
镇人大副主席民主生活会对照检查材料思想汇报
2014/10/01 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书
python DataFrame中stack()方法、unstack()方法和pivot()方法浅析
2022/04/06 Python