Чи використовуєте ви як методи клієнта, так і серверну перевірку?


10

Чи використовуєте ви як клієнтські, так і серверні методи перевірки на стороні під час перевірки вводу від користувача, наприклад, через контактну форму?

Якщо так, то чи справді це потрібно? Ви над інженером?


Відповіді:


27

Так, і слід.

Це підтримує миттєвий зворотній зв'язок з користувачем без марних поштових розсилок, а також захищає від відключення JavaScript.

Ось так працює контроль перевірки ASP.NET .

Це, звичайно, не надмірна інженерія, оскільки використання одного без іншого має недоліки.


8
+1. Немає приводу для відсутності imo перевірки на стороні сервера imo.
DBlackborough

11
Сторона сервера необхідна, клієнтська сторона - це зручність. У веб-додатках ви не можете розраховувати на перевірку на стороні клієнта.
BillThor

@BillThor - Так точно
billy.bob

інтелектуальні користувачі напевно можуть зловживати вашим додатком, якщо у вас немає перевірки на стороні клієнта
Umair

6

Якщо так, то чи справді це потрібно?

Так.

Ви над інженером?

Ні.

Перевірка фронту може дати негайний зворотній зв'язок, якщо це багатий інтерфейс.

Задньою частиною можна скористатися декількома передніми торцями. І це єдине підтвердження для резервного плану лише для HTML (без javascript).


6

Однією з перших основ, які я дізнався про безпеку, було те, що хакери ніколи не використовуватимуть ваш інтерфейс користувача.

Будь-яку перевірку на стороні клієнта зазвичай можна легко обійти у веб-додатках, якщо у них є своя локальна версія вашої форми, а потім надіслати її назад на ваш сервер.

Перевірка на стороні клієнта чудово сприяє покращенню роботи користувачів та зменшенню зайвих поїздок на сервер для перевірки.


+1, я бачив багато прикладів, коли перевірка була зроблена повністю на стороні клієнта
Карл

2

Перевірка на стороні сервера повинна бути мінімальною.

А для введення, який, ймовірно, невірний, слід також додати перевірку на стороні клієнта.

Наприклад: перевірте, чи правильно відформатовано електронну пошту як на клієнтській, так і на стороні сервера, але перевірити, чи унікальна вона, може бути перевірка на стороні сервера.


1
"Перевірка непотрібності" - це перевірка НЕ ​​перевірка, тому це не застосовується. Зрозумійте різницю.
billy.bob

2
Ви навіть читали те, що публікуєте? Перевірка того, що електронний лист є унікальним, є валідацією. Перевірка, скажімо, що електронна пошта та пароль є дійсними обліковими записами, - це підтвердження. У будь-якому випадку, це лише питання термінології.
Андреа

1

Так, використовувати обоє не погано. Якщо прості помилки введення користувача можуть бути виявлені на стороні клієнта, то має сенс повідомити користувачеві про ці помилки, перш ніж надсилати дані та виправляти ваші сервери. Наприклад, якщо користувач ввів щось, що не схоже на адресу електронної пошти, у полі "електронна пошта" або введено рядок довжиною лише 5 символів у полі пароля, і ви знаєте, що для вашого сайту потрібно, щоб пароль був принаймні 6 символів, то Ви повинні повідомити про це користувачеві, перш ніж щось надсилати на сервер.

Важливо також дублювати таку саму перевірку на сервері з 2 причин: 1) що робити, якщо у користувача відключений Javascript?

2) Користувач зловмисно намагався обійти вашу перевірку на стороні клієнта, що дуже просто.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.