NodeJS Express框架中处理404页面一个方式_javascript技巧

在用 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 来接管。

时间: 2024-09-25 07:58:15

NodeJS Express框架中处理404页面一个方式_javascript技巧的相关文章

js父页面中使用子页面的方法_javascript技巧

iframe是非常常用的一个html元素,如果在父页面中使用子页面的方法应该怎么写呢,下面就做一下简单的介绍.一.父页面代码 <html> <head> <meta charset=" gb2312"> <title>父页面</title> <script type="text/javascript"> function parentFunction() { alert('function in

JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享_javascript技巧

效果展示: 代码实现: 控制器 <?php namespace app\controllers; use Yii; use yii\filters\AccessControl; use yii\web\Controller; use yii\filters\VerbFilter; use app\models\LoginForm; use app\models\ContactForm; //use yii\db\ActiveRecord; use yii\data\Pagination; use

浅谈在js传递参数中含加号(+)的处理方式_javascript技巧

一般情况下,URL 中的参数应使用 url 编码规则,即把参数字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+). 但是对于带有中文的参数来说,这种编码会使编码后的字符串变得很长. 如果希望有短一点的方式对参数编码,可以采用 base64 编码方式对字符串进行编码,但是 base64 编码方式不能处理 JavaScript 中的中文,因为 JavaScript 中的中文都是以 UTF-16 方式保存的. 而 base64 只能处理单字

js数组中如何随机取出一个值_javascript技巧

复制代码 代码如下: <html> <boby> </body> <script language="javascript"> window.onload = function(){ var arr = ["太阳光大.父母恩大.君子量大.小人气大","成功是优点的发挥,失败是缺点的累积","不要小看自己,因为人有无限的可能", "口说好话.心想好意.身行好事"

在html页面中包含共享页面的方法_javascript技巧

How do I include one HTML file inside another? It's very common practice to have a consistent theme on a web site. You might have a standard navigation bar or a logo or even just a page footer with copyright and administrative information. Rather tha

详细分析Javascript中创建对象的四种方式_javascript技巧

前言 使用Javascript创建对象的方式有很多,现在就来列举一下其中的四种方式,并且罗列出了每种方式的优缺点,可以让大家进行选择使用,下面来看看. 工厂模式 function createPerson(name, age){ var obj = new Object(); obj.name = name; obj.age = age; return obj; //一定要返回,否则打印undefined:undefined } var person1 = new createPerson('Y

JavaScript中yield实用简洁实现方式_javascript技巧

刚才忽然灵机一动,迭代器我们很少会真的直接傻乎乎的next去遍历的,那为什么一定要实现这个傻乎乎的next呢?直接实现each,这样,这样反过来,Yeah,一通百通,不一会儿就写出了第一个超简洁版本: 复制代码 代码如下: function yieldHost(yieldFunction) { return function (processer) { var yield = function (result) { processer(result) }; yieldFunction(yield

Nodejs express框架一个工程中同时使用ejs模版和jade模版_node.js

在某些项目中,比如你接手了一个别人的项目然后你不想用蛋疼的ejs,或者你不想用蛋疼的jade.你有不想重写之前的页面,那么你现在可能需要新引入ejs或者jade模块,你仅仅需要做下面两步也许就能完成使用两个模版的工作 1.consolidate.js cd 到项目目录: npm install consolidate --save 打开项目的app.js(也许你的叫其他名字) 把app.js的形如下面的代码片段 app.set('view engine', 'jade'); 改为 var eng

ThinkPHP框架中添加404错误页面以及访问安全

所有的网站项目都需要添加一个404页面,不仅友好,而且对网站优化也有一定的好处,而用ThinkPHP框架搭建的网站添加404页面的方法还是很简单的,利用的就是空类,空方法 第一步: 在Lib/Action文件夹下创建EmptyAction.class.PHP <?php class EmptyAction extends Action { function _empty(){ header("HTTP/1.0 404 Not Found"); $this->display(