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);