Files
novel_server/internal/middleware/language.go

21 lines
437 B
Go

package middleware
import (
"server/utility/i18n"
"github.com/gogf/gf/v2/net/ghttp"
)
// Language 语言检测中间件
// 从请求头或查询参数中检测语言设置,并设置到上下文中
func Language(r *ghttp.Request) {
// 获取语言设置
lang := i18n.GetLanguage(r.GetCtx())
// 将语言设置到上下文中,供后续使用
r.SetCtxVar("language", lang)
// 继续下一个中间件
r.Middleware.Next()
}