Lilly
(Lillian )
04.Сентябрь.2023 23:46:58
7
Анкур Тьяги, пост:5, тема:277332, full:true:
Привет, @Lilly !
Спасибо за ответ.
Я попробовал это и с новым пользователем, и обновляя локаль для существующего пользователя, но это не сработало. Похоже, это работает только для анонимных пользователей. Я ищу решение для авторизованных пользователей.
Будет полезно, если вы сможете проверить детали настройки конфигурации ниже; возможно, мне нужно что-то обновить, чтобы исправить это, но я не уверен.
Версия форума Discourse: Discourse 3.2.0.beta1-dev
JS-пакет, используемый для SSO: discourse-sso (версия: 1.0.5)
Ссылка на пакет Discourse: discourse-sso - npm
Привет, @Ankur_Tyagi ! Мне жаль, что у вас всё ещё возникают проблемы. Вы изучили совет Саймона с использованием параметра locale_force_update? Думаю, всё, что я знаю о SSO, я почерпнул от @simon
simon:
Для существующего пользователя, у которого уже есть учётная запись в Discourse, вам нужно добавить параметр locale_force_update в userparams и установить его значение в true. Я думаю, что в вашем случае вы можете включать параметр locale_force_update как при создании нового пользователя, так и при обновлении пользователя:
Я бы внимательно изучил эту информацию, которую опубликовал @simon , а также официальное руководство DiscourseConnect SSO How-To , на которое была дана ссылка.
simon:
К сожалению, чтобы обновить локаль или любые другие атрибуты через полезную нагрузку DiscourseConnect , пользователю придётся выйти из системы Discourse, а затем снова войти. Это означает, что маловероятно, что пользователь сразу получит обновлённую локаль. Существует обходной путь для этого, но, по-моему, он не обрабатывается npm-пакетом discourse-sso. Чтобы обновить пользователя через DiscourseConnect без требования выйти и снова войти в систему Discourse, вам нужно сделать вызов маршрута sync_sso. Подробности об этом здесь: Синхронизация данных пользователя DiscourseConnect через маршрут sync_sso .
Если у вас возникают проблемы с правильным установлением локали для новых пользователей или для пользователей, которые выходят и снова входят после добавления параметров локали, попробуйте включить настройку сайта Discourse verbose discourse connect logging. Это позволит вам увидеть параметры, которые отправляются в Discourse с вашей страницы /logs (находится в разделе Администрирование / Журналы / Журналы ошибок).
Настройка детального ведения журнала Discourse Connect и журналы помогут вам устранить эту проблему: