В целом, это просто сомнительная практика, потому что
app.get('/:id', ...)
соответствует каждому возможному маршруту верхнего уровня и вызывает конфликты с другими маршрутами верхнего уровня, которые вы хотите / нужны в работе вашего сайта.
Вы можете заставить его работать, всегда устанавливая его как последнее возможное определение маршрута, но я бы рекомендовал изменить URL-адрес на что-то вроде
http://localhost:3000/id/hh234due
, а затем вы можете использовать:
app.get('/id/:id', ...)
и не должно конфликтовать ни с одним из ваших маршрутов верхнего уровня.
При таком способе структура URL также является более декларативной, поскольку в части /id
четко указано, что это за URL, а не раньше, когда вы больше полагались на тот факт, что он не похож ни на один других маршрутов верхнего уровня на вашем сайте, так что «я думаю», это должен быть идентификатор, который не так декларативен или не понятен другим разработчикам, которые могут работать над этим сайтом в будущем.