2012-04-10 5 views
1

Можно создать дубликат:
JavaScript: client-side vs. server-side validationЯвляется ли проверка подлинности JavaScript/jQuery на стороне клиента бесполезной?

Есть много сценариев проверки на стороне клиента форма JavaScript/JQuery там. Но, учитывая, что это клиентская сторона, довольно легко обойти проверку и отправить форму со значениями, которые игнорируют правила проверки. Единственное решение - также выполнить проверку на стороне сервера, чтобы защитить себя.

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

Кроме того, есть ли хорошие способы реализации проверки на стороне клиента, которые не требуют проверки на стороне сервера?

+4

** Цитата OP **: _ «Валидация jQuery на стороне клиента - это весело, и она выглядит гладкой, но если вам уже нужно выполнить проверку на стороне сервера, то в чем смысл проверки на стороне клиента?» _ ** Потому что это весело, и он выглядит скользким. ** – Sparky

+4

Итак, ваши пользователи имеют лучший опыт. –

+0

http://stackoverflow.com/a/162579/29995 –

ответ

6

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

Проверка на стороне клиента существует только потому, что это быстрее. Очень скоро узнайте, что мой адрес электронной почты не был отформатирован правильно, чем после того, как я отправил форму, сервер проверил ее и отправил что-то обратно.

2

Он обеспечивает лучшее взаимодействие с пользователем. В этом-то и дело. Вместо отправки формы каждый раз и ожидания ответа сервера пользователь может увидеть результаты проверки сразу после изменения значений формы.

3

Одно слово: юзабилити. Вы должны не только писать веб-приложения в защиту от хакеров. Есть еще много обычных пользователей, которые просто хотят простое в использовании, интуитивно понятное программное обеспечение.

0

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

0

Идея проверки на стороне клиента заключается в том, что система является «быстрой». Если честный пользователь совершает ошибку, ей говорят сразу, что хорошо для пользователя (меньше ожидания) и для сервера (более легкая загрузка трафика).

Для обеспечения безопасности всегда необходима проверка на стороне сервера; любая система проверки на стороне клиента, которая является безопасной, должна предполагать, что пользователь каким-то образом не контролирует свою собственную машину.

Смежные вопросы