在 Keycloak 中,国际化设置和默认语言的配置主要涉及以下几个方面:
1. Keycloak 配置
在 Keycloak 的管理控制台中,你可以通过以下步骤设置默认语言:
- 登录到 Keycloak 管理控制台。
- 选择你的 Realm。
- 转到 Realm 设置(Realm Settings)。
- 在 国际化(Internationalization)选项卡中,可以设置默认语言。
如果没有明确设置,Keycloak 默认会使用 en(英语)作为会话语言。
2. 浏览器语言
Keycloak 会根据用户的浏览器语言设置来决定初始的语言。如果浏览器发送的请求中包含 Accept-Language 头部,Keycloak 会优先考虑这个值。也就是说,如果用户的浏览器语言是其他语言,Keycloak 会尝试匹配并使用该语言。
- 当keycloak程序里配置的语言和浏览器不一致时,会出来语言和皮肤不一样的情况,默认程序里语言是中文
- 浏览器默认是英文,这时会出现页面内容和KEYCLOAK_LOCALE不一致情况
3. Cookie 设置
当用户登录后,Keycloak 会在 Cookie 中生成一个名为 KEYCLOAK_LOCALE 的会话级别变量,用于存储当前的语言设置。如果用户在界面上更改了语言,该 Cookie 的值将会更新。
总结
- 默认语言 (KEYCLOAK_LOCALE) 可以在 Keycloak 管理控制台中进行设置。
- 如果未设置,Keycloak 默认使用英语。
- 浏览器的语言设置会影响 Keycloak 的初始语言选择。
你可以检查这些设置,以确保 Keycloak 的语言配置符合你的需求。如果需要进一步的帮助,请告诉我!
会话级cookie
在 Keycloak 中,KEYCLOAK_LOCALE Cookie 的生命周期是会话级的,这意味着它的存活时间与浏览器会话相关。具体来说:
会话级 Cookie 的特性
- 关闭浏览器后失效:会话级 Cookie 在用户关闭浏览器时会被删除。因此,当你下次重新打开浏览器时,之前存储在 KEYCLOAK_LOCALE Cookie 中的值将不再存在。
- 浏览器标签页:如果你只是关闭了某个标签页,而不是整个浏览器,Cookie 仍然会保持有效,直到你关闭整个浏览器或手动清除 Cookie。
可能的例外情况
- 持久化 Cookie:如果开发者在设置 Cookie 时使用了持久化选项(例如,设置了过期时间),那么即使关闭浏览器,Cookie 也会保留。但这并不适用于会话级 Cookie。
- 隐私模式:在隐私/无痕模式下,所有会话级 Cookie 会在窗口关闭后立即被删除。
总结
如果你关闭了浏览器,KEYCLOAK_LOCALE Cookie 的值应该不会保留。如果你发现关闭浏览器后再次打开仍能看到该值,可能是因为使用了持久化 Cookie 或其他特殊设置。可以检查 Cookie 的属性以确认其类型和生命周期设置。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|
|
|
相关推荐
|
|