Автоматический вход на сайт Discourse

Привет :slight_smile:

На самом деле это немного сложнее, чем может показаться.

Механизм входа по электронной почте работает следующим образом: когда вы нажимаете кнопку «По электронной почте» в модальном окне входа, для конкретного пользователя генерируется токен, который сохраняется в email_tokens. Этот токен можно увидеть в ссылке (строка из цифр и букв):

http://localhost:3000/session/email-login/69c4953ff0726b5f4c2b26c1e3563b79

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

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

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

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