feat: bff resp string to json

This commit is contained in:
zzw
2026-08-07 11:57:32 +08:00
parent b42f94f520
commit cf49ec56c7
4 changed files with 41 additions and 42 deletions
+20 -1
View File
@@ -50,10 +50,29 @@ func Wrap(next http.HandlerFunc) http.HandlerFunc {
return
}
}
ctrl.OutPut(w, data.Code, data.Data, data.Msg)
ctrl.OutPut(w, data.Code, unwrapJSONData(data.Data), data.Msg)
}
}
func unwrapJSONData(v any) any {
s, ok := v.(string)
if !ok {
return v
}
s = strings.TrimSpace(s)
if s == "" {
return nil
}
if s[0] != '{' && s[0] != '[' {
return v
}
var parsed any
if err := json.Unmarshal([]byte(s), &parsed); err != nil {
return v
}
return parsed
}
func mapHTTPError(httpStatus int, body string) Error {
msg := strings.TrimSpace(body)
msg = strings.TrimPrefix(msg, "rpc error: ")