Express 中文API 笔记

Properties

app.locals
可以通过在app.locals中设置变量来进行全局访问,而res.locals设置的变量仅能在一次请求的生命周期中有效

app.mountpath

路径模式

Events

app.on('mount', callback(parent))

在子应用程序挂载到父应用程序上时,触发mount事件,并在回调函数中返回父应用程序的实例

Methods

app.all(path, callback [, callback ...])

用来给指定的请求路径添加一个或多个回调函数,回调函数最后需要执行next()将请求分发给后续的路由

app.all('/secret', function (req, res, next) {
    console.log('Accessing the secret section ...')
    next() // pass control to the next handler
});

app.delete(path, callback [, callback ...])

same as the app.all()

app.engine(ext, callback)

注册给定的模板引擎

app.get(name)

获取通过app.set(name, value)设置的属性值

app.get(path, callback [, callback ...])

get请求方式

app.set(name, value)

子程序:
-不继承具有默认值的变量的值。必须在子应用程序中设置值。
-继承没有默认值的变量的值;
例外: 子程序将继承trust proxy的值,不管它是否有默认值。子程序在生产环境下不会继承view cache中的值,即NODE_ENV 是production的时候

app.listen(path, [callback])

启动UNIX套接字并侦听给定路径上的连接。等同于 http.Server.listen()

app.listen([port[, host[, backlog]]][, callback])

返回一个 http.Server 对象
app.listen = function() { var server = http.createServer(this); return server.listen.apply(server, arguments); };
var app = express()实际上返回一个js对象,能够作为node 中http和https的回调函数来处理请求响应

var express = require('express');
var https = require('https');
var http = require('http');
var app = express();

http.createServer(app).listen(80);
https.createServer(options, app).listen(443);

app.METHOD(path, callback [, callback ...])

app.param([name], callback)

name是参数名或者参数名组成的数组

回调函数的参数依次是req,res,next,参数值,参数名

所有的参数回调函数都会在该参数出现的路由被解析之前调用,且只调用一次

app.param()也可以接受一个用户自定义的函数,该函数需要两个参数,第一个是请求时要捕获的参数名,第二个是任意对象,该函数的返回值必须是一个中间件,类似于正常模式下的callbackapp.path()返回应用程序的标准路径

app.post(path, callback [, callback ...])

app.post('/', function (req, res) {  
    res.send('POST request to homepage');
});

app.put(path, callback [, callback ...])

app.render(view, [locals], callback)

通过回调函数返回视图的渲染HTML。它接受一个可选参数,该参数是包含视图的局部变量的对象。它类似于res.render(),但它不能自己将呈现的视图发送给客户端。

app.use([path,] callback [, callback...])

在请求路径与给定路径相同时,调用指定的中间件函数

不设置path参数的时候,路径默认为''/",意味着中间件函数将会在每次请求的时候执行

中间件函数是按顺序执行的,因此函数中的内容很重要

Error-handling middleware

错误处理中间件函数始终需要传递4个参数

app.use(function(err, req, res, next) {  
    console.error(err.stack);  
    res.status(500).send('Something broke!');
});
posted @ 2018-12-13 14:44  CodingSherlock  阅读(250)  评论(0编辑  收藏  举报