Files
2025-10-26 15:41:30 +08:00

36 lines
519 B
Go

package langx
import "context"
const ctxLangKey string = "ctxLang"
func SetCtxLang(ctx context.Context, lang string) context.Context {
return context.WithValue(ctx, ctxLangKey, lang)
}
func GetCtxLang(ctx context.Context) string {
// 指定的
lang := ctx.Value(ctxLangKey)
l := ""
if lang != nil {
l = lang.(string)
}
// HTTP头部的
if l == "" {
lang = ctx.Value("Accept-Language")
if lang != nil {
l = lang.(string)
}
}
// 默认的
if l == "" {
l = GetDefaultLang()
}
return l
}