Express 是一个基于 Node.js 平台的极简、灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。
Express 不对 Node.js 已有的特性进行二次抽象,我们只是在它之上扩展了 Web 应用所需的基本功能。
下载
$ npm install express --save
express()
创建一个Express应用。express()是一个express模块导出的入口函数。
var express = require('express');
var app = express();
应用
应用程序对象通常表示快速应用程序。通过调用顶层express()函数的表达模块出口创造它:
var express = require('express');
var app = express();
app.get('/', function(req, res){
res.send('hello world');
});
app.listen(3000);
性能
app.locals
app.locals对象是一个JavaScript对象,其性质是局部变量的应用。
app.locals.title
// => 'My App'
app.locals.email
// => '[email protected]'
一旦设置,对app.locals属性值持续贯穿在生活中的应用,在res.locals性质,只为请求的寿命是有效的对比。
您可以访问应用程序中呈现的模板中的本地变量。这对于为模板提供助手函数以及应用程序级数据非常有用。但是请注意,您不能访问中间件中的本地变量。
app.locals.title = 'My App';
app.locals.strftime = require('strftime');
app.locals.email = '[email protected]';
app.mountpath
pp.mountpath属性是路径模式(S)的子应用程序安装。
子应用程序是一个Express实例,可用于处理对路由的请求。
var express = require('express');
var app = express(); // the main app
var admin = express(); // the sub app
admin.get('/', function (req, res) {
console.log(admin.mountpath); // /admin
res.send('Admin Homepage');
})
app.use('/admin', admin); // mount the sub app
事件——Events
app.on('mount', callback(parent))
挂载事件在子应用程序上被触发,当它安装在父应用程序时。父应用程序被传递到回调函数。
admin.on('mount', function (parent) {
console.log('Admin Mounted');
console.log(parent); // refers to the parent app
});
admin.get('/', function (req, res) {
res.send('Admin Homepage');
});
app.use('/admin', admin);
方法——Methods
1.app.all(path, callback [, callback ...])
method()方法,除了它匹配所有的HTTP动词。
2.app.delete(path, callback [, callback ...])
使用指定的回调函数将HTTP删除请求路由到指定的路径。
3.app.disable(name)
将布尔设置名称设置为false,其中name是应用程序设置表中的一个属性。表示禁用。
4.app.enable(name)
将布尔设置名称设置为true,其中name是应用程序设置表中的一个属性。
5.app.engine(ext, callback)
寄存器给出的模板引擎回调作为分机。
6.app.get(name)
返回名称应用程序设置的值,其中name是应用程序设置表中的字符串之一
7.app.get(path, callback [, callback ...])
使用指定的回调函数将HTTP请求路由到指定的路径。
8.app.listen(port, [hostname], [backlog], [callback])
绑定并侦听指定主机和端口上的连接。
9.app.METHOD(path, callback [, callback ...])
路由HTTP请求,其中方法是请求的HTTP方法,如get、get、POST、put等,小写。
10.app.param([name], callback)
将回调触发器添加到路由参数中,其中name是参数的名称或数组的名称,函数是回调函数。
11.app.path()
返回应用程序的规范路径(字符串)。
12.app.render(view, [locals], callback)
通过回调函数返回视图的呈现HTML。它接受一个可选参数,该参数是一个包含视图的局部变量的对象。
13.app.route(path)
route()避免重复路线名称。
14.app.set(name, value)
将设置名称赋给值,其中name是应用程序设置表中的一个属性。
15.app.use([path,] function [, function...])
在路径上安装中间件函数。如果未指定路径,则默认为“/”。
更多详情:http://www.expressjs.com.cn/4x/api.html