bs-community / blessing-skin-server

Web application brings your custom skins back in offline Minecraft servers.
MIT License
815 stars 119 forks source link

在安装向导中提示用户设置默认语言以避免启动器/游戏中皮肤站名称错误 #591

Open Mythologyli opened 9 months ago

Mythologyli commented 9 months ago

Blessing Skin 版本

All

PHP 版本

8.1

出现问题时所使用的浏览器

Chrome

您正在使用的 Web Server

Nginx

您正在使用宝塔吗?

出现了什么问题?

问题简述

如果用户不在 .env 中手动修改默认语言,可能会导致使用 yggdrasil 登录时启动器/游戏中皮肤站名称出现意想不到的错误(显示为默认名称 Blessing Skin),且用户难以定位问题所在。

原理

当中文用户进入站点配置界面后,如果不手动切换语言,修改的是中文标题,而英文标题维持默认 Blessing Skin。虽然设置中有提示“如果想要编辑某种特定语言下的站点标题与描述,请在右上角切换至该语言后再提交修改”,但用户很可能意识不到这与 yggdrasil 登录显示的站点名称的关联。

如果不在 .env 中修改默认语言,Blessing Skin 的默认语言为 en,即:请求头中没有 Accept-Language 则按照 en 处理。yggdrasil 插件也遵循这一点,根据请求头中的 Accept-Language 返回不同语言的站点名称。但主流启动器(已在 HMCL、PCL2 上测试)并未在请求头中携带 Accept-Language,造成启动器中显示默认英文站点名称 Blessing Skin,而用户很难定位此问题。

image image

参考

https://github.com/huanghongxun/HMCL/pull/2521

建议

在设置向导中配置默认语言,并向用户强调这直接影响启动器/游戏中的皮肤站名称。

或者在设置-站点配置中,加入“默认站点标题”和“默认站点描述”,并提示用户这直接影响启动器/游戏中的皮肤站名称。

错误日志

No response

重现步骤

https://github.com/huanghongxun/HMCL/pull/2521