Экспресс-маршрут к другому файлу
Я новичок в экспрессе, и я также использую Backbone Boilerplate. В случае развития, когда просят /assets/css/index.css
Я хочу доставить /public/dist/debug/index.css
,
Я сделал это:
var env = process.env.NODE_ENV || 'development';
switch (env) {
case 'development':
app.get('/assets/css/index.css', function(req, res) {
res.sendfile('public/dist/debug/index.css');
});
break;
}
Но по какой-то причине моя страница продолжает получать неправильный файл: /assets/css/index.css
,
Что случилось?
1 ответ
Решение
Это должно работать, если вы не используете express.static()
(который я предполагаю, обрабатывает запросы на /assets/css/index.css
; если нет, замените на "маршрут, который обрабатывает эти запросы":) перед вашим маршрутом (что будет означать, что статическое промежуточное программное обеспечение будет обрабатывать запрос первым).
Кроме того, вместо вашего switch
заявление, вы можете использовать app.configure
:
app.configure('development', function() {
// this code will only run when in development mode
app.get('/assets/css/index.css', function(req, res) {
res.sendfile('public/dist/debug/index.css');
});
});
// static middleware after your route
app.use(express.static(...));