Il cliente può moderare i dati che ti inviano, quindi non è possibile garantire che il proprio codice lato client abbia generato i dati non di input. Tuttavia, non dovresti essere obbligato a impedire a un client di bruciarsi da solo quando tenta di hackerare il tuo sistema.
Chiediti: i dati non validi in quei campi non di input sono un problema solo per il cliente o sono un problema per il tuo sistema e / o altri client?
Se si tratta di un problema per il sistema e / o altri client, quindi validarlo con tutti i mezzi. Non vuoi che gli altri client subiscano errori di hacking e non vuoi che il tuo server venga violato.
Tuttavia, se si tratta di un problema solo per il tuo cliente, non devi fare di tutto per risolverlo. Dopo tutto, loro stanno hackerando il tuo sistema. Vuoi proteggere i tuoi clienti dagli errori quando utilizzano l'interfaccia utente o il servizio Web che fornisci, ma se provano a trovare backdoor e commettono errori, dovrebbe essere il loro problema.
Ad esempio, se il codice lato client raccoglie i dati delle impostazioni locali dalla macchina client in modo che il server possa generare correttamente i formati di tempo e di numero e convertirli in unità appropriate durante il rendering delle pagine. Il client ha violato il modulo di registrazione e inviato i dati di registrazione direttamente tramite richiesta HTTP, ma hanno sbagliato il formato locale e ora ottengono le date nel calendario Gibberish e le lunghezze sono visualizzate in Sterline.
Dico: è il loro vero problema per l'hacking del tuo sistema!
Puoi essere più gentile e convalidare quei dati per loro, ma nessuno dovrebbe biasimarti per un supporto di hacking scadente ...
Detto questo, dovresti assicurarti che sia così prima di decidere di non convalidare quei dati. Ad esempio, se il client pubblica i dati che vengono analizzati in base alle sue impostazioni internazionali e visualizzati su altri client, dovrai verificare le impostazioni locali in modo da non rovinare i dati per gli altri utenti.