Как правильно сделать переход?
У меня имеется сайт на фреймворке MVC, у меня там имеется форма регистрации, поля у меня просто ввод номера. Так вот, как после ввода номера и после нажатия кнопки отправить код переключить форму на форму ввода кода? Как лучше всего это сделать? Для более точного вопрос, возьмём скажем тот же телеграмм. Если вы когда-то такое делали, буду рад тому, что покажите такую правильную реализацию на MVC
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Да вариантов масса, что правильно - это вопрос для каждого свой.
Для начала сделайте хоть какую-то реализацию, а потом улучшайте, если возникнут какие-то проблемы или "узкие места". Банальный алгоритм:
- Показываем окно ввода телефона. Пользователь вводит и нажимает кнопку "отправить"
- На стороне клиента отправляется ajax запрос на сервер, в виде POST запроса, например по адресу
/user/phone-for-confirmation - Пользователю показывается окно с подтверждением и пишется "Вам придёт СМС, ожидайте"
- В это время на сервере в методе
/user/phone-for-confirmationможно сделать три вещи
- Сохранить телефон во временную таблицу
- Сгенерировать рандомный номер и положить рядом с номером телефона в эту таблицу
- Отослать запрос через какой-либо сервис с текущим сгенерированным номером
- Пользователь получает СМС и вводит код, отправляется ajax запрос на сервер, например по адресу
/user/auth-confirmed - На сервере сравнивается этот код с тем, что во временной таблице. Если не совпадает - возвращается ответ "Повторите ещё", в ином случае делается что-то ещё