Есть ли способ получить информацию о текущем вошедшем пользователе в Discourse из моего React SPA без перезагрузки страницы?
Хм, подойдёт ли здесь маршрут /session/current.json? ![]()
Я попытался отправить GET-запрос, но получил ответ 404.
Думаю, вам может понадобиться Discourse Connect, чтобы оба сайта авторизовывались через один и тот же источник SSO.
Я просто пытаюсь получить имя текущего вошедшего пользователя. Входить в систему не нужно.
Это работает, когда я отправляю API-запрос внутри моего форума. Но не с моего сайта на React, который запущен в том же браузере.
Это логично: сайт на React не имеет и не может получить соответствующие учётные данные с форума для выполнения запроса, и он не должен иметь возможности их получить. Если бы он мог, это была бы серьёзная проблема безопасности. Я рекомендую сделать то, что было упомянуто выше, и настроить Discourse Connect.
Я уже использую Discourse Connect, где позволяю членам определённой группы входить на мой сайт через Discourse.
У меня есть редактор сообщений прямо в моём React-приложении, чтобы пользователи могли создавать темы напрямую из React-приложения, не создавая учётную запись в моём React-приложении. Поэтому мне нужно получать информацию о пользователе, который вошёл в систему через Discourse.
Проблема с SSO заключается в том, что он требует полной перезагрузки страницы, чего мне нужно избежать, чтобы моя функция работала.
Я не верю, что это возможно, но, возможно, кто-то другой сможет вам помочь и доказать обратное.
Убедитесь, что вы не делаете вызовы API через фронтенд на JavaScript, в котором содержится API-ключ.
Конечно, в таком случае я использую серверные компоненты. Спасибо за ваше предложение.

