NodeJS Express框架中处理404页面一个方式
在用 Express 的时候,路由是我最困惑的事之一。知道用 app.get('*') 可以处理所有页面,但这样除了自定义的其他路由外,静态文件是被忽略的。最近在写一个小工具的时候,找到了一个解决方案:
代码如下:
var express = require('express'),
router = require('./routes');
var app = module.exports = express.createServer();
// Configuration
app.configure(function () {
// ...
// 别把顺序写反了
app.use(express.static(__dirname + '/public'));
app.use(app.router);
});
// 其他 router ...
// 404
app.get('*', function(req, res){
res.render('404.html', {
title: 'No Found'
})
});
把通配符放于最后处理。这样没有经过路由的所有页面默认由 404.html 来接管。
相关推荐
-
Nodejs初级阶段之express
上一篇<node.js 初体验>写的也不错,感兴趣的朋友可以了解下. Node和NPM的安装够便捷了,不细说...有几点基础顺手提一下: 1.安装命令中的 "-g" 表示全局(global) 2.express的版本不是通常的 "-v" 来查看,而是 "-V" 3.安装express项目的命令如下 express -e nodejs-product -e, --ejs add ejs engine support -J, --jsht
-
nodejs+express实现文件上传下载管理网站
nodejs+express-实现文件上传下载管理的网站 项目Github地址:https://github.com/qcer/updo 后端:基于nodejs的express的web框架. 前端:bootstrap框架+vuejs.jquery等js库 功能点: dronzone.js实现文件拖拽上传.下载,可自定义传输容量. vuejs实现表格双向数据绑定. jquery.form.min.js表单插件,升级表单,实现表单提交回调. 纯css+jQuery实现一键返回顶部. 简单的ajax异
-
Express与NodeJs创建服务器的两种方法
目录 NodeJs创建Web服务器 Express创建Web服务器 NodeJs创建Web服务器 var http = require('http'); var server = http.createServer(function(req, res) { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.write('hello world!'); res.end(); }).listen(80); 这是一个原生式的创建一个we
-
Nodejs的express使用教程
Express 是一个简洁.灵活的 node.js Web 应用开发框架, 它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用. 1.express组织结构 app demo |---node_modules------用于安装本地模块. |---public------------用于存放用户可以下载到的文件,比如图片.脚本.样式表等. |---routes------------用于存放路由文件. |---views-------------用于存放网页的
-
NodeJS处理Express中异步错误
摘要 比起回调函数,使用 Promise 来处理异步错误要显得优雅许多. 结合 Express 内置的错误处理机制和 Promise 极大地降低产生未捕获错误(uncaught exception)的可能性. Promise 在ES6中是默认选项.如果使用 Babel 转译,它也可以与 Generators 或者 Async/Await 相结合. 本文主要阐述如何在 Express 中使用错误处理中间件(error-handling middleware)来高效处理异步错误.在 Github 上
-
nodejs使用express创建一个简单web应用
Express 在初始化一个项目的时候需要指定模板引擎,默认支持Jade和ejs. 这里我们使用ejs模板引擎:(关于ejs的介绍可以先从百科里面了解一个大概) EJS是一个JavaScript模板库,用来从JSON数据中生成HTML字符串. 在使用express创建一个网站的时候,使用ejs模板引擎,建立基本的网站结构,当前目录下使用:express -t ejs sophiehui命令就在当前目录下创建了一个sophiehui的子目录,创建信息如图片所示: 倒数第四行提示我们安装依赖,所以接
-
Nodejs进阶:基于express+multer的文件上传实例
概览 图片上传是web开发中经常用到的功能,node社区在这方面也有了相对完善的支持. 常用的开源组件有multer.formidable等,借助这两个开源组件,可以轻松搞定图片上传. 本文主要讲解以下内容,后续章节会对技术实现细节进行深入挖掘. 基础例子:借助express.multer实现单图.多图上传. 常用API:获取上传的图片的信息. 进阶使用:自定义保存的图片路径.名称. 环境初始化 非常简单,一行命令. npm install express multer multer --sav
-
NodeJS框架Express的模板视图机制分析
模板引擎 Express支持许多模板引擎,常用的有: haml 的实现Haml haml.js 接替者,同时也是Express的默认模板引擎Jade 嵌入JavaScript模板EJS 基于CoffeeScript的模板引擎CoffeeKup 的NodeJS版本jQuery模板引擎 视图渲染(view randering) 视图的文件名默认需遵循"<name>.<engine>"的形式,这里<engine>是要被加载的模块的名字.比如视图layout
-
windows下安装nodejs及框架express
以下通过两种方式介绍windows下安装node.js及框架express 第一种方式: 总共分为四步轻松完成Nodejs的Express安装 第一步.安装 所有要先按装express-generator,否则创建项目时,会提示express命令没找到 npm install -g express-generator #需先安装express-generator npm install -g express express -V #验证是否安装成功 第二步.创建项目 $ express myfi
-
初识NodeJS服务端开发入门(Express+MySQL)
NodeJS对前端来说无疑具有里程碑意义,在其越来越流行的今天,掌握NodeJS已经不再是加分项,而是前端攻城师们必须要掌握的技能.本文将与同志们一起完成一个基于Express+MySQL的入门级服务端应用,即可以对数据库中的一张表进行简单的CRUD操作.但本人还是斗胆认为,通过这个应用,可以让没怎么接触后端开发的同志对使用Node进行后端开发有一个大致了解. Express工程环境准备 1. 安装express,和express项目种子生成器(什么?你问第1步为什么不是安装NodeJS,我也只
随机推荐
- Eclipse代码格式化设置简单介绍
- Asp截获后台登录密码的代码
- 微信支付 :curl出错,错误码:60两个问题的解决
- mdf文件和ldf文件导入到sql server 2005实现语句
- Vue.js父与子组件之间传参示例
- Perl 获取shell命令的执行结果
- JavaScript中window.showModalDialog()用法详解
- 经典JavaScript正则表达式实战(附pdf)
- JDBC连接Oracle数据库常见问题及解决方法
- Android 进度条显示在标题栏的实现方法
- 如何实现textarea里的不同文本显示不同颜色
- 详解Mysql中的视图
- jQuery过滤选择器用法示例
- Jquery获取radio选中的值
- java 转发和重定向区别及实例代码
- Bootstrap Modal对话框如何在关闭时触发事件
- 一个刚完成的layout(拖动流畅,不受iframe影响)
- PHP捕捉异常中断的方法
- Android 微信图片分享功能
- 由php if 想到的些问题