Очевидно, что типичный пример добавления маршрутов для выражения следует следующим образом:
var express = require('express');
var app = express();
app.get('/', function(req, res){
res.send('hello world');
});
app.listen(3000);
Очевидно, что в большинстве случаев вы знаете, что маршрут get
существует до начала прослушивания сервера. Но что, если вы хотите динамически создавать новые маршруты после прослушивания сервера? Другими словами, я хочу сделать что-то вроде следующего:
var express = require('express');
var app = express();
app.listen(3000, function () {
app.get('/', function(req, res){
res.send('hello world');
});
});
На практике обратный вызов маршрута, очевидно, будет динамически вытягиваться из какого-то удаленного источника. Я протестировал вышеприведенный код, и все работает нормально, однако я надеялся получить подтверждение, что не будет никаких непредвиденных побочных эффектов создания маршрутов после вызова app.listen до того, как я перейду к этому шаблону.
Примечание. Чтобы уточнить, я не знаю, какими будут маршруты, когда я напишу основной файл server.js
, который будет создавать экспресс-сервер (поэтому почему я не могу создать маршруты до того, как будет вызван listen
). Список маршрутов (и их соответствующих обработчиков/функций обратного вызова) будет выведен из базы данных при запуске/запуске сервера.