Sto costruendo un'API RESTful usando Node / Express4 e finora ho avuto successo. Tuttavia, non sono sicuro di dove implementare la convalida dei dati degli URL - lo script del router potrebbe bloccare le richieste URI non valide o dovrebbe inviare al controller i dati non validi per inviare un errore?
L'URI previsto è come nel seguente esempio:
/api/:tagName/:postYear/:postMonth/:postDay
E dovrebbe restituirmi un array JSON di post in Anno / Mese / Giorno.
Quello che voglio è implementare un modo per impedire che una richiesta di data non valida venga inviata alla query del database, ad esempio
/api/:tagName/20170105
Dovrebbe restituire un errore.
Il mio dubbio è se sia più appropriato che il router convalidi l'anno nell'esempio (4 cifre, solo caratteri numerici) o se debba inviare "20170105" al controller e farlo analizzare l'URI e lanciare un errore di nuovo al cliente.
Esiste un modo consigliato o funziona ugualmente bene da un punto di vista strutturale?