ルーティングのパスに正規表現を使う
検証せずに数値(文字列)であることが保証できるので、ルーティングが太ることを回避できます。
xxx.ts
router.get("/students/:studentId([1-9]\\d*)", (req: Req, res: Res, next: Next) => {
const studentId = req.params.studentId;
const student = await studentsService.find(studentId);
res.render("students/detail", {
student,
});
})
ルーティングの正規表現を試したい場合は、以下のサイトがオススメです。