[Express] Express 起步走 Getting Started
Express
設定靜態路徑:express.static
// app.js
app.use('/upload', express.static(`${__dirname}/upload`));
Response
res.locals
僅作用於該 request - response 的物件,因此只能在該 request-response 所轉譯的頁面取得,除此之外它和 app.locals
是一樣的。適合 用在使用者資訊的設定、驗證等。
// controller
app.use(function (req, res, next) {
res.locals.user = req.user;
res.locals.authenticated = !req.user.anonymous;
next();
});
可以直接在 View 的地方取得 user
和 authenticated
的值。
res.redirect
res.redirect() @ Express API
// 回到上一層路徑
// 例如,http://example.com/admin/post/new,則會回到 http://example.com/admin/post
res.redirect('..');
// 回到 referer 的網址,若沒有提供,則會回到 '/'
res.redirect('back');
常用工具
express-handlebars
const exphbs = require('express-handlebars');
app.engine('hbs', exphbs({ defaultLayout: 'main', extname: '.hbs' }));
app.set('view engine', 'hbs');