国际化
Hertz 提供了国际化 (i18n) 的中间件扩展。
Hertz 提供了国际化 (i18n) 的 中间件扩展 ,它参考了 Gin 的 实现 。
使用方法可参考如下 example
安装
示例代码
配置
Localize
用于将 i18n
扩展集成进 hertz server
函数标签如下:
示例代码:
MustGetMessage
MustGetMessage
用于获取 i18n 信息,但不做错误处理。
函数签名如下:
示例代码如下:
LocalizeConfig 配置项
该配置项移步 go-i18n 自行查看
WithBundle
WithBundle
用于将自定义配置加载进入中间件
函数标签如下:
示例代码如下:
配置项
配置项 | 类型 | 默认值 | 描述 |
---|---|---|---|
DefaultLanguage | language.Tag | language.English | 默认转换语言类型 |
FormatBundleFile | string | “yaml” | 转换文件模板类型,例如:yaml, json |
AcceptLanguage | []language.Tag | []language.Tag{defaultLanguage,language.Chinese} | 接收转换类型 |
RootPath | string | defaultRootPath | 模板文件目录 |
UnmarshalFunc | i18n.UnmarshalFunc | yaml.Unmarshal | 模板文件解码函数,例如:yaml.Unmarshal |
Loader | Loader | LoaderFunc(ioutil.ReadFile) | 文件读取函数,例如 LoaderFunc(ioutil.ReadFile) |
WithGetLangHandle
WithGetLangHandle
用于配置 i18n 模板触发条件,可以通过从参数,请求头中取出信息
函数标签如下:
示例代码如下:
完整用法示例详见 i18n
最后修改
December 1, 2023
: docs: translate multiple service guide (#870) (228621b)