From 76734989d58efbe3450cbd30e03baf1be733bedc Mon Sep 17 00:00:00 2001 From: tiny-craft <137850705+tiny-craft@users.noreply.github.com> Date: Wed, 11 Oct 2023 15:48:29 +0800 Subject: [PATCH] fix: big number lose precision via view as JSON format #52 --- backend/utils/string/convert.go | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/backend/utils/string/convert.go b/backend/utils/string/convert.go index cae1d18..83503f8 100644 --- a/backend/utils/string/convert.go +++ b/backend/utils/string/convert.go @@ -175,14 +175,11 @@ func autoToType(str string) (value, resultType string) { } func decodeJson(str string) (string, bool) { - var data any if (strings.HasPrefix(str, "{") && strings.HasSuffix(str, "}")) || (strings.HasPrefix(str, "[") && strings.HasSuffix(str, "]")) { - if err := json.Unmarshal([]byte(str), &data); err == nil { - var jsonByte []byte - if jsonByte, err = json.MarshalIndent(data, "", " "); err == nil { - return string(jsonByte), true - } + var out bytes.Buffer + if err := json.Indent(&out, []byte(str), "", " "); err == nil { + return out.String(), true } } return str, false