Проверка ввода для формы входа в систему излишняя? Накладные расходы + "слишком много JavaScript" касается - PullRequest
1 голос
/ 16 апреля 2011

Мысль о проверке ввода в моей форме входа в систему пришла мне в голову при создании подтверждения ввода для моей формы регистрации. Моя форма входа требует адрес электронной почты и пароль. Будет ли излишним проверять на размытие (и на keyup, только если предыдущий ввод был недействительным), является ли то, что введено в текстовое поле электронной почты, адрес электронной почты, и что пароль имеет минимальную длину (регистрация требует пароль должен быть не менее 6 символов)?

Я уже кодировал логику на стороне сервера для обработки входа в систему, поэтому, если не выполнить проверку ввода, будет перенаправлен либо на страницы ошибок «допустимый ввод, но неверный», либо «электронная почта не в системе». *

Зная это, будет ли это излишним? Было бы неплохо, чтобы пользователь визуально уведомлялся о том, что введенные им данные имеют правильный формат при каждом входе в систему?

* (Так как мы находимся на предмет входа в систему, я был бы признателен за ввод еще одного вопроса.

В настоящее время в моей системе уведомление о неверной комбинации адреса электронной почты и пароля отличается от сообщения, не входящего в систему. Я заметил, что многие сайты имеют одинаковое сообщение для обоих (что-то вроде: «имя пользователя или пароль могут быть неправильными»), а многие нет.

Вероятно, это потому, что они не хотят, чтобы люди могли вынюхивать пользователей. Однако прослушивание может быть выполнено и во время регистрации (поскольку все системы будут уведомлять пользователя, если имя пользователя / адрес электронной почты уже есть в системе). Должен ли я изменить свою систему, чтобы учесть неоднозначность, или это нормально, как есть?)

Ответы [ 5 ]

2 голосов
/ 16 апреля 2011

Было бы излишне проверять на размытие (и при включении, только если предыдущий ввод был неверным) что вводится в тексте электронной почты поле является адресом электронной почты, и это пароль минимальной длины (регистрация требует, чтобы пароль должен быть не менее 6 символов)?

Нет, проверять размытость не излишне. Было бы излишне проверять на keyup. Я лично считаю это раздражающим как пользователя.

Я уже закодировал логику на стороне сервера обрабатывать логин, поэтому не реализует проверка ввода будет перенаправлена ​​на либо "правильный ввод, но неверный" или "электронная почта не в системе" ошибка стр. *

Я бы порекомендовал повторить такие страницы с ошибками, но вместо этого снова перенаправить на форму входа в систему с сообщением об ошибке, в котором говорится, что то или иное недействительно. Сообщения об ошибках следует использовать для действительных данных , которые не совпадают в базе данных.

В настоящее время моя система отличается уведомление о неверном адрес электронной почты / пароль, чем для электронная почта, которой нет в системе. я обратите внимание, что многие сайты имеют одинаковое сообщение для обоих (что-то вроде: «имя пользователя или пароль могут быть неверно "), а многие нет.

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

Должен ли я изменить свою систему, чтобы учесть двусмысленность или все нормально как есть?)

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

Не говоря уже о том, что ожидание при передаче данных в оба конца значительно задерживает задержку по сравнению с локальной обратной связью javascript. Если бы вы использовали что-то вроде node.js, вы могли бы даже проверить свою валидацию в одном месте и не иметь двух поддерживаемых копий.

1 голос
/ 16 апреля 2011

ИМХО, это излишне.

Защищенные сайты, как правило, имеют одно и то же сообщение об ошибке независимо от причины сбоя при входе в систему (неизвестный пользователь или неверный пароль): это основано на том, что чем меньше информации вы сообщаете хакеру, тем лучше.

В том же духе, зачем беспокоиться о том, чтобы сообщить хакеру, какие форматы вы считаете допустимыми?

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

1 голос
/ 16 апреля 2011

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

Говоря о себе, мне нравится свобода печатать и исправлять мой ввод без предупреждений.Я бы сэкономил свои сообщения об ошибках, пока пользователь не захочет отправить формуляр.

1 голос
/ 16 апреля 2011

По моему, это не излишество.Чем быстрее вы сможете визуально оценить, что что-то не так, тем лучше.

1 голос
/ 16 апреля 2011

Было бы неплохо, чтобы пользователь визуально уведомлялся о том, что введенные им данные имеют правильный формат при каждом входе в систему?

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...