Lorsqu’un utilisateur se connecte à mon site, j’obtiens le JWT et je le connecte également à Discourse immédiatement. À la fin de ce flux, il se retrouve sur le site Discourse au lieu de revenir sur mon site.
J’ai essayé d’examiner les méthodes de redirection de la bibliothèque omniauth, qui incluent le paramètre origin et le cookie destination_url décrits ici. Aucune d’elles ne semble fonctionner.
Peut-être que @eviltrout pourrait éclaircir la situation.
EDIT : Je viens de réaliser que j’ai consulté deux bibliothèques différentes, omniauth et les callbacks omniauth de Discourse. Quoi qu’il en soit, je suis toujours incertain quant à la manière de faire fonctionner cela.
I don’t think this is a supported path. In general, a user would be on discourse, click login, visit your site for auth and be redirected back. If a user logs in directly on your site, they should stay on your site.
Typically how we do this is keep Discourse logged out, but when they click “Login” it’ll redirect back without having to fill out the authentication form again.
So, the embeds do make use of the auth session (or the session cookie) to show or hide private discourse topics.
This auth flow does make sense, but for starters, I’m going to redirect people to the discourse forum for login on a new tab. They will be able to access private topics after a refresh.