Express4.10.2開發架構中預設app.js的代碼注釋

來源:互聯網
上載者:User

標籤:

//通過require()載入了express、path等模組
var express = require(‘express‘);
var path = require(‘path‘);
var favicon = require(‘serve-favicon‘);
var logger = require(‘morgan‘);
var cookieParser = require(‘cookie-parser‘);
var bodyParser = require(‘body-parser‘);
//通過require()載入了routes檔案夾下的index.js和users.js路由檔案
var routes = require(‘./routes/index‘);
var users = require(‘./routes/users‘);
//產生一個express執行個體app
var app = express();

// view engine setup
//設定views檔案夾為存放視圖檔案的目錄,即存放模板檔案的地方;__dirname為全域變數,儲存當前正在執行的指令碼所在的目錄
app.set(‘views‘, path.join(__dirname, ‘views‘));
//設定視圖模板引擎為ejs
app.set(‘view engine‘, ‘ejs‘);

// uncomment after placing your favicon in /public
//設定/public/favicon.icon為favicon表徵圖
//app.use(favicon(path.join(__dirname, ‘public‘, ‘favicon.ico‘)));

//載入日誌中介軟體
app.use(logger(‘dev‘));
//載入解析json的中介軟體
app.use(bodyParser.json());
//載入解析urlencoded請求體的中介軟體
app.use(bodyParser.urlencoded({ extended: false }));
//載入解析cookie的中介軟體
app.use(cookieParser());
//設定public檔案夾為存放靜態檔案的目錄
app.use(express.static(path.join(__dirname, ‘public‘)));

//路由控制器
app.use(‘/‘, routes);
app.use(‘/users‘, users);

// catch 404 and forward to error handler
//捕獲404錯誤,並轉寄到錯誤處理器
app.use(function(req, res, next) {
var err = new Error(‘Not Found‘);
err.status = 404;
next(err);
});

// error handlers

// development error handler
// will print stacktrace
//開發環境下的錯誤處理器,將錯誤資訊渲染error模板並顯示到瀏覽器中
if (app.get(‘env‘) === ‘development‘) {
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render(‘error‘, {
message: err.message,
error: err
});
});
}

// production error handler
// no stacktraces leaked to user
//生產環境下的錯誤處理器,將錯誤資訊渲染error模板並顯示到瀏覽器中
app.use(function(err, req, res, next) {
res.status(err.status || 500);
res.render(‘error‘, {
message: err.message,
error: {}
});
});

//匯出app執行個體供其他模組調用
module.exports = app;

Express4.10.2開發架構中預設app.js的代碼注釋

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.