Verificando se um usuário está logado no Discourse a partir de outro site

Você pode fazer isso com o DiscourseConnect (com o Discourse funcionando como provedor de autenticação): Use Discourse as an identity provider (SSO, DiscourseConnect).

Ainda não tentei, mas o parâmetro prompt pode ser útil para o seu caso:

  • prompt: Se prompt=none, então a solicitação SSO é tratada como uma solicitação de “apenas verificação”. Se o navegador/dispositivo já estiver logado no Discourse, o Discourse retornará uma resposta SSO bem-sucedida contendo informações de autenticação do usuário, como de costume. Se o navegador/dispositivo não estiver logado, o Discourse não pedirá ao usuário para fazer login e retornará imediatamente uma resposta SSO contendo o parâmetro failed=true em vez de informações do usuário. Isso fornece um mecanismo para consultar se o usuário está logado, sem nunca direcionar o usuário para uma caixa de diálogo de login, caso ele não esteja.
1 curtida