错误处理中间件

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

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

创建文件结构

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

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

配置文件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开发个人博客(二)入口文件的更多相关文章

  1. 初试Nodejs——使用keystonejs创建博客网站2(修改模板)

    上一篇(初试Nodejs——使用keystonejs创建博客网站1(安装keystonejs))讲了keystonejs的安装.安装完成后,已经具备了基本的功能,我们需要对页面进行初步修改,比如,增加 ...

  2. 用flask开发个人博客(4)—— flask中4种全局变量

    https://blog.csdn.net/hyman_c/article/details/53512109 一  current_app current_app代表当前的flask程序实例,使用时需 ...

  3. nodejs--express开发个人博客(-)

    写完了入门笔记,开始进入开发阶段吧.基于上一节的内容,现在着手开发个人博客系统.先划分一下功能吧 /:首页 /login:登陆 /reg:注册 /post:发表文章 /logout:退出 首先规划一下 ...

  4. iOS开发优秀博客和软件推荐

    iOSBlogAndTools iOS开发优秀博客和软件推荐 本博客和工具列表由广大iOS开发者收集和推荐,如果大家有好的博客或者工具想要分享请点击:我要提交. 收到大家的提交后会及时收录与更新.Gi ...

  5. RSP小组——团队冲刺博客二

    RSP小组--团队冲刺博客二 冲刺日期:2018年12月11日 前言 经过第一天的冲刺,我们开始了我们冲刺之路,但是不知为什么,我们的动力并不足,首先可能是我们前期对该项目的编制过程中,因为没有经验, ...

  6. shell小脚本--从laod博客更新hosts文件

    #!/bin/bash #-------------------------------------------- # name: change-hosts.sh #----------------- ...

  7. 微信小程序开发技巧总结(二) -- 文件的选取、移动、上传和下载

    微信小程序开发技巧总结(二) -- 文件的选取.移动.上传和下载 1.不同类型文件的选取 1.1 常用的图片 视频 对于大部分开发者来说,需要上传的文件形式主要为图片,微信为此提供了接口. wx.ch ...

  8. [nodejs] nodejs开发个人博客(一)准备工作

    前言 nodejs是运行在服务端的js,基于google的v8引擎.个人博客系统包含对数据库的增删查改,功能齐备,并且业务逻辑比较简单,是很多后台程序员为了检测学习成果,最先拿来练手的小网站程序.我也 ...

  9. [nodejs] nodejs开发个人博客(三)载入页面

    模板引擎 使用ejs作为我们博客的前端模板引擎,用来从json数据生成html字符串 安装:npm install ejs -save 使用:入口文件中写入下面代码,定义/view/目录为视图目录 / ...

  10. 初试Nodejs——使用keystonejs创建博客网站1(安装keystonejs)

    我正在阿里云上创建一个简单的个人博客网站,刚好正在尝试NodeJs,决定找一款基于NodeJs的CMS来完成这个工作,最后找到了KeyStoneJS. KeyStoneJS是基于Express和Mon ...

随机推荐

  1. [转]HTML5本地存储——Web SQL Database

    在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数据就 ...

  2. wordpress为dashboard添加样式

    function my_admin_theme_style() { wp_enqueue_style('my-admin-style', get_template_directory_uri() . ...

  3. APP快速通过苹果AppStore审核九大诀窍

    [IT168技术]对于移动应用开发者来说, 最令人沮丧的可能莫过于辛辛苦苦开发的应用, 没能通过苹果AppStore的审核,或者在应用更新时遭遇下架.苹果的AppStore的审核流程和标准, 一向不透 ...

  4. [AngularJS] New in Angular 1.3 - bindToController

    If you want to use controllers, instead of a link function, you can use bindToController. <!DOCTY ...

  5. (转)linux性能优化总结

    感谢博客http://sillycat.iteye.com提供的资料 linux性能检查(一)介绍和CPU 通常监控的子系统有: CPU Memory IO Network 应用类型 IO相关,处理大 ...

  6. js动态加载控件jsp页面

    例子1:(具体参照drp中的flow_card_add.jsp)<script>    var rowIndex = 0;     function addOneLineOnClick() ...

  7. ceph 性能测试

    我在物理机上创建了5台虚拟机,搭建了一个ceph集群,结构如图: 具体的安装步骤参考文档:http://docs.ceph.org.cn/start/ http://www.centoscn.com/ ...

  8. TensorFlow实战——个性化推荐

    原创文章,转载请注明出处: http://blog.csdn.net/chengcheng1394/article/details/78820529 请安装TensorFlow1.0,Python3. ...

  9. 手机(Android)资源

    手机型号 API Android版本   Lenovo A238t API 10 2.3.5   华为 P7 API 19 4.4.2                  

  10. Word文档中的格式标记大全

    在Word中有很多的格式设置,很多格式设置都会有一些标记,这些标记是隐藏的,在打印文档时是不会打印出来的,但是它们却起着结构化文档的大作用.如果你在编辑文档,不妨点击格式标记开关,看看都有哪些格式标记 ...