Вы не помещаете строку запроса в определение маршрута с Express. Если вы собираетесь остаться с этой структурой URL, тогда вам нужен один обработчик маршрута и использовать if
на основе значений в req.query
:
router.get("/chemists", (req, res) => {
if (req.query.orderBy === "date") {
// handle /chemists?orderBy=date
} else if (req.query.orderBy === "chemist") {
// /chemists?orderBy=chemist
} else {
// handle neither chemist or date specified
}
});
Если вы действительно, действительно хотели отдельные маршруты для них в Express вам придется изменить дизайн URL-адреса на что-то вроде:
/chemists/date
/chemists/person
, для которого вы затем можете объявить отдельный маршрут для каждого. Поскольку этот порядок сортировки на самом деле является просто атрибутом запроса (те же ресурсы запрашиваются в любом случае), имеет смысл (в схеме REST), чтобы он был первым параметром в строке запроса с одним маршрутом.