Обслуживание статических файлов на динамическом маршруте с помощью Express
Я хочу служить статические файлы, как это обычно делается с express.static(static_path)
но на динамическом
маршрут, как это обычно делается с
app.get('/my/dynamic/:route', function(req, res){
// serve stuff here
});
в этом намекается на решение комментарий одним из разработчиков, но мне не сразу понятно, что он имеет в виду.
2 ответа:
ОК. Я нашел пример в исходном коде для экспресс' ответ объекта. Это немного измененная версия этого примера.
app.get('/user/:uid/files/*', function(req, res){ var uid = req.params.uid, path = req.params[0] ? req.params[0] : 'index.html'; res.sendfile(path, {root: './public'}); });
использует
res.sendfile
метод.Примечание: изменения безопасности
sendfile
требуется использование .
Я использую ниже код для обслуживания одних и тех же статических файлов, запрошенных разными url:
server.use(express.static(__dirname + '/client/www')); server.use('/en', express.static(__dirname + '/client/www')); server.use('/zh', express.static(__dirname + '/client/www'));
хотя это не ваш случай, это может помочь другим, кто попал сюда.