UI 로케일
Logto는 표준 OIDC 인증 (Authentication) 파라미터인 ui_locales
를 지원하여, 특정 상호작용에 대한 로그인 경험 및 이후 커뮤니케이션의 언어를 제어할 수 있습니다.
기능 설명
- 런타임에 Logto 호스팅 로그인 경험의 UI 언어를 결정합니다. Logto는
ui_locales
에 있는 언어 태그 중 테넌트의 언어 라이브러리에서 지원되는 첫 번째 태그를 선택합니다. - 상호작용에 의해 트리거된 메시지(예: 인증 코드 이메일)의 이메일 현지화에 영향을 줍니다. 자세한 내용은 이메일 템플릿 현지화를 참고하세요.
- 원래 값을 이메일 템플릿의 변수
uiLocales
로 노출하여, 필요하다면 이메일 제목/내용에 포함할 수 있습니다.
파라미터 형식
- 이름:
ui_locales
- 타입:
string
- 값: BCP 47 언어 태그의 공백으로 구분된 목록, 예시:
fr-CA fr en
- 참고: OpenID Connect Core - ui_locales
결정 순서 및 우선순위
로그인 경험 및 관련 이메일의 UI 언어를 결정할 때, Logto는 다음 순서로 최종 사용자의 언어를 결정합니다:
- 현재 인증 (Authentication) 요청의
ui_locales
(지원되는 첫 번째 태그가 우선). - 그렇지 않으면,
Accept-Language
헤더 (경험 (Experience) API / 사용자 계정 (Account) API) 또는messagePayload.locale
(조직 초대와 같은 Management API). - 그렇지 않으면, 로그인 경험에 설정된 테넌트의 기본 언어.
이 동작은 언어 설정을 영구적으로 변경하지 않으며, 현재 상호작용에만 적용됩니다.
SDK 사용법
Logto SDK를 사용하는 경우, 로그인 호출의 extraParams
를 통해 ui_locales
를 전달하면 인가 (Authorization) 요청에 함께 전달됩니다:
await logtoClient.signIn({
redirectUri: 'https://your.app/callback',
extraParams: {
ui_locales: 'fr-CA fr en',
},
});
예시
ui_locales=fr-CA fr en
→ 언어 라이브러리에fr-CA
가 있으면 로그인 UI가 프랑스어(캐나다)로 표시됩니다. 없으면fr
, 그다음en
순으로 대체됩니다.ui_locales=ja
이지만 일본어가 활성화되어 있지 않으면 →Accept-Language
또는 테넌트 기본값으로 대체됩니다.