Pembangun menyemak kod backend pada monitor

Borang yang kelihatan kemas di pelayar masih boleh menerima permintaan terus daripada skrip atau klien lain. Sebab itu validasi di JavaScript memberi maklum balas cepat kepada pengguna, tetapi API tetap perlu menyemak data apabila request sampai.

Mulakan dengan aturan bentuk: medan wajib, panjang maksimum, format e-mel dan nilai yang dibenarkan. Kemudian asingkan aturan perniagaan, contohnya sama ada kuota tempahan masih ada atau status akaun membenarkan tindakan. Dua jenis ralat ini mempunyai mesej serta tempat ujian yang berbeza. Jangan masukkan setiap aturan dalam satu regex yang sukar diterangkan.

Pulangkan ralat yang boleh digunakan

Respons “invalid input” sahaja memaksa pengguna meneka. Nyatakan medan yang perlu diperbetul tanpa membocorkan maklumat sensitif. Di ASP.NET Core, model binding dan validation boleh membantu menangkap masalah struktur; panduan rasmi menerangkan cara ia disepadukan dengan MVC dan API. Namun aturan domain masih perlu ditulis berdasarkan produk sebenar.

Bagi satu borang, senaraikan ralat yang paling mungkin dibuat pengguna: medan kosong, teks terlalu panjang dan pilihan yang sudah tidak tersedia. Tulis mesej yang membantu membetulkan setiap keadaan. Kemudian uji API secara terus tanpa JavaScript. Jika kedua-dua laluan memberi keputusan konsisten, pengalaman serta keselamatan lebih mudah dijaga.

Hadkan saiz input dan jangan anggap data yang sudah divalidasi selamat untuk semua kegunaan. Output HTML, pertanyaan pangkalan data dan log masing-masing memerlukan penjagaan tersendiri. Validasi yang baik ialah sebahagian daripada pengalaman pengguna dan pertahanan sistem, bukan kotak semak di hujung pembangunan.