1.Application
2.Request
3.Response
4.Router
5.Middleware
============================================================================================================
1.Application
#1.express() 实例,所有的express操作都是建立在express的实例对象上的
var express = require('express');
var app = express();
app.listen(3000);
#2.settings express的参数配置
env:设置当前的环境是开发、测试还是生产
trust proxy:设置反向代理,默认关闭,当需要使用nginx进行负载均衡设置的时候需要将参数设置为true
jsonp callback name:jsonp支持的callback的默认名称
case sensitive routing:支持区分大小写
strict routing:路由规则设置,默认情况下/foo和/foo/是一样的,如果设置后会区分这样的两种情况
view cache:视图编译缓存,生产环境中默认启动
view engine:试图引擎,需要根据使用的前端框架去配置过滤不同的文件
x-powered-by:
#3.app.set(name, value) 设置变量
#4.app.get(name) 获取变量
#5.app.enable() 和set类似,不过这个是设置true的
#6.app.diable() 和enable正好相反,设置false
#7.app.enabled() 查询参数设置是否为true,检验enable的状态
#8.app.disabled() 查询参数设置是否为false,检验disable的状态
#9.app.user() 挂载文件、模块、函数等,默认路径是"/"。类似于import
##1.设置请求路径过滤
app.user('/',function(req,res,next){
});
##2.模块、文件引入
app.use(express.static(__dirname + '/public'));
#10.app.engine(ext,callback) 配置前端引擎
app.engine('.html', ejs.__express);
app.set('view engine', 'html');
#11.app.param([name], callback)
就如同参数的过滤起,可以在过滤器中为传入的参数补全信息,也可以对参数进行正则验证#12.app.VERB(path,[callback...],callback) get,post请求方法,可以绑定get和post处理请求
#13.app.all() 类似与get和post,这个可以处理全部请求,可以用作过滤器
#14.app.router(path) 过滤访问的路径
var app = express();
app.route('/events')
.all(function(req, res, next) {
// runs for all HTTP verbs first
// think of it as route specific middleware!
})
.get(function(req, res, next) {
res.json(...);
})
.post(function(req, res, next) {
// maybe add a new event...
})
#15.app.locals 常量对象,可以设置当前Application的常量,是个对象类型,所以可以向其中加入值和函数、文件等。
#16.app.render() 跳转指向,和res的render类似,两者的区别是什么还不太清楚。
#17.app.listen() 端口和host的监听,与nodejs中的http.server的listen是相同的
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);