// util.go:管线结果类型与工具函数。 package gateway import ( "encoding/json" "strconv" "strings" ) // jsonUnmarshal 解码辅助。 func jsonUnmarshal(b []byte, v any) error { return json.Unmarshal(b, v) } // itoa int→string。 func itoa(n int) string { return strconv.Itoa(n) } // itoa64 int64→string。 func itoa64(n int64) string { return strconv.FormatInt(n, 10) } // errMsg 错误消息提取(nil 安全)。 func errMsg(err error) string { if err == nil { return "未知错误" } return strings.TrimSpace(err.Error()) } // isOKEnvelope 判断信封字节是否为 ok=true(缓存写入仅成功结果)。 func isOKEnvelope(raw []byte) bool { var probe struct { OK bool `json:"ok"` } if err := jsonUnmarshal(raw, &probe); err != nil { return false } return probe.OK }