From a14cf7c08dc37b7f9308248928aa3b16307f3c2f Mon Sep 17 00:00:00 2001 From: 1911860538 Date: Sat, 8 Nov 2025 22:06:23 +0800 Subject: [PATCH] refactor(render): use WriteJSON when JsonpJson.Callback is empty --- render/json.go | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/render/json.go b/render/json.go index 8f4b144b..ceeeca9c 100644 --- a/render/json.go +++ b/render/json.go @@ -115,19 +115,17 @@ func (r SecureJSON) WriteContentType(w http.ResponseWriter) { // Render (JsonpJSON) marshals the given interface object and writes it and its callback with custom ContentType. func (r JsonpJSON) Render(w http.ResponseWriter) (err error) { + if r.Callback == "" { + return WriteJSON(w, r.Data) + } + + r.WriteContentType(w) + ret, err := json.API.Marshal(r.Data) if err != nil { return err } - if r.Callback == "" { - writeContentType(w, jsonContentType) - _, err = w.Write(ret) - return err - } - - r.WriteContentType(w) - callback := template.JSEscapeString(r.Callback) if _, err = w.Write(bytesconv.StringToBytes(callback)); err != nil { return err