Какой принцип построения ответа при регистрации пользователя?
Здравствуйте. Делаю форму регистрации. Какой должен быть принцип построения ответов сервером?
Есть несколько исходов попытки регистрации: успешная регистрация, невалидые данные, пользователь с такими данными уже существует. код писать не нужно, хотелось бы просто объяснения
Вариантов может быть куча. Вы назвали основные, но все зависит от вашей логики. Например, вам нужна хорошая безопасность и вы устанавливаете срок жизни пароля. Если пароль не поменяли в течении недели, то по нему зайти нельзя. Аналогичная работа с токенами. Может быть вход только под определенным IP. В общем вариантов много. Все зависит от вашей бизнес логики.
Я не про обширность вариантов, а про то, что должен вернуть скрипт регистрации. не строки же возвращать "вы успешно зарегистрированы", или "такой пользователь уже существует".
scottparker, если вы делаете api вы должны возвращать сообщения с кодом ответа и сообщением в виде json или xml. Если вы делаете HTML, то он должен возвращать только саму ошибку. Например, как это сделано в Yii через сессии и отображения в шаблоне ошибки.
не строки же возвращать "вы успешно зарегистрированы", или "такой пользователь уже существует".
Именно строки, если не хотите заморачиваться с видом отображения. Если хотите заморочиться - возвращайте HTML. Если хотите ещё сильнее оптимизировать - можете использовать сессии, в которые вы записываете сообщение и вид блока. А уже в шаблоне проверяются сессии. Если сессия с ключом есть - отображается блок.
Максим, если я хочу при успешной регистрации вывести popup-success, при существующем пользователе - вывести popup-error, а при невалидных данных, например неверном email возле поля ввода email пометить что он плохой, просто строки вернуть, это же не то вариант?
scottparker, посмотрите мой коммент вы всегда возвращаете джисон а уж на клиенте высвечиваете окошко по айлишнику ошибки, а клиенту выдаёте читаемую строку