Umesh AP Ответов: 2

Влияние валидаций как на стороне клиента, так и на стороне сервера


Всем Привет,
Кажется, это очень важный вопрос, который нужно задать на этом форуме, но я не могу избавиться от своих сомнений, гугля весь день. Во всех статьях говорится, что валидация на стороне сервера обязательна, даже если валидация на стороне клиента размещена правильно. Мы не можем полагаться только на клиентскую сторону, потому что пользователь может отключить javascript на клиентской стороне. Но если я пишу одни и те же валидации с обеих сторон, то производительность снижается, так как одни и те же валидации выполняются дважды сначала на стороне клиента, а затем на стороне сервера. Как решить эту проблему.

Что я уже пробовал:

Погуглив целый день, я узнал, что всегда пишу валидации на стороне сервера для лучшей надежности и безопасности. Но я боюсь, что это повлияет на производительность приложения.

2 Ответов

Рейтинг:
16

ZurdoDev

Производительность не ухудшается. Вы должны делать валидацию на стороне сервера, несмотря ни на что. Валидации на стороне клиента-это хорошо, чтобы сделать его более отзывчивым к пользователю. Итак, если вы собираетесь пропустить 1, пропустите клиентскую сторону.

Но это не влияет на производительность. Проверка на стороне клиента выполняется в браузере клиента и должна быть очень быстрой. Если все это проходит, то форма подается как отдельный процесс, и там происходит валидация.


Umesh AP

Спасибо, Ряндев. Я немного запутался в вопросе производительности.

ZurdoDev

Что ты имеешь в виду? Что вас смущает?

Umesh AP

Привет, Ряндев, Извини за мой плохой английский. Я хочу сказать, что раньше меня смущала производительность, но после прочтения обоих ответов мои сомнения рассеялись.

ZurdoDev

ОК. Хорошо.

ZurdoDev

Вы менее смущены. В этом есть смысл. ;)

Рейтинг:
1

F-ES Sitecore

Это добавит несколько миллисекунд на запрос страницы, такое небольшое количество времени, что клиент даже не заметит его, и, учитывая важность проверки, это несколько миллисекунд, которые люди не возражают добавить.