ExpressJS是nodejs的web開發架構,最新版本為4.0相比于3.x版本,ExpressJS 4.X版本做了一些如下改變:
1. 去除了中間件的綁定,所有中間件的使用必須單獨下載下傳,然後加載,這樣設計的好處在于以後使用者可以根據自己的需要按需下載下傳項目所需要的中間件以及更新.
var app = express();
//3.X版本,中間件的使用
app.use(express.bodyParser());
app.use(express.cookieParser());
//4.0版本,需要單獨加載中間件
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
//use
app.use(cookieParser());
app.use(bodyParser()):
2.app.configure()不在有效,基于環境的參數配置隻要通過簡單的if-else語句塊,例如開發環境的配置:
//expressjs 3.x
app.configure('development' , function({
//to do
}));
//expressjs 4.0
var env = process.env.NODE_ENV || 'development' ;
if('development' == env ){
//to do
};
3.路由的改變.
expressJs 3.x路由的處理,一般為:
app.get('/' , function( res, res ,next ){
// todo
});
app.post('/users' , function(res ,res ,next){
});
expressjs4.0添加了很多路由的可選方式,例如通過app.Router執行個體
var app = express();
var router = express.Router();
router.get('/' , function( req, res){..});
router.post('/users',function(req,res){...});
//調用路由 ,可以指定根目錄
app.use('/' , router );