При наличии экземпляра приложения или маршрутизатора Express JS возможно ли сопоставить запрос с настроенными маршрутами приложений и получить объект, который описывает маршрут, зарегистрированный в приложении?
Например, если бы запрос на /users/1
должен был обрабатываться приложением, для экземпляра app
/ router
была бы возможность программно проверить, есть ли у приложения маршрут, который бы удовлетворял этому запросу, если метод URI и HTTP?
Желательный код sudo (ish):
const app = express();
app.use((req, res, next) => {
const handler = app.match(req);
// {
// 'method': 'GET',
// 'path': '/user/:id', <--- mainly looking for this
// 'handler': <function reference>
// }
next();
});
app.get('/user/:id', (req, res, next) => {
// fetch the user and do something with it
});
...