ExpressJS любой способ проверить, если шаблон URL-адреса совпадают программным способом? - PullRequest
0 голосов
/ 06 октября 2019

Я хочу выполнить что-то подобное для шаблона expressjs

isMatch([expressjs_pattern], [path_string])

EX:
isMatch('/users/:userId/roles/:roleCode/$', '/users/123/roles/admin/')
//    result = true

В любом случае сделать так?

1 Ответ

0 голосов
/ 06 октября 2019

Как указано в руководстве Express для маршрутизации, в разделе Пути маршрутов ( здесь ):

Express использует path-to-regexp для сопоставления путей маршрута;см. документацию path-to-regexp для всех возможностей определения путей маршрута.

Таким образом, вы можете npm install path-to-regexp и проверять строки на соответствие шаблонам:

const p2r = require('path-to-regexp');
const regexp = p2r('/users/:userId/roles/:roleCode');
regexp.test('/users/123/roles/admin'); // true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...