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