Наилучшая практика для «Оцените сейчас, ответьте позже»? - PullRequest
0 голосов
/ 27 сентября 2011

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

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

1 Ответ

0 голосов
/ 27 сентября 2011

Для страницы входа без AJAX обычной практикой является перенаправление браузера пользователя на страницу входа с дополнительным параметром запроса в URL. В псевдокоде приведен сегмент кода контроллера проверки входа:

success = checkLogin(username,password)
if (success == false)
  redirect('http://example.com/login?failedlogin=true')

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

Если на странице входа используется Ajax, Javascript на странице входа в систему принимает результаты вызова AJAX и обновлениясоответствующие элементы DOM с сообщением об ошибке.

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