1
0
Fork 0
forked from forgejo/forgejo

Migrate to use jsoniter instead of encoding/json (#14841)

* Migrate to use jsoniter

* fix tests

* update gitea.com/go-chi/binding

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: 6543 <6543@obermui.de>
This commit is contained in:
zeripath 2021-03-01 21:08:10 +00:00 committed by GitHub
parent 59fd641d1f
commit f0e15250b9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
77 changed files with 264 additions and 82 deletions

View file

@ -18,7 +18,6 @@
package binding
import (
"encoding/json"
"fmt"
"io"
"mime/multipart"
@ -30,6 +29,7 @@ import (
"strings"
"unicode/utf8"
jsoniter "github.com/json-iterator/go"
"github.com/unknwon/com"
)
@ -89,6 +89,7 @@ func errorHandler(errs Errors, rw http.ResponseWriter) {
} else {
rw.WriteHeader(STATUS_UNPROCESSABLE_ENTITY)
}
json := jsoniter.ConfigCompatibleWithStandardLibrary
errOutput, _ := json.Marshal(errs)
rw.Write(errOutput)
return
@ -171,6 +172,7 @@ func JSON(req *http.Request, jsonStruct interface{}) Errors {
if req.Body != nil {
defer req.Body.Close()
json := jsoniter.ConfigCompatibleWithStandardLibrary
err := json.NewDecoder(req.Body).Decode(jsonStruct)
if err != nil && err != io.EOF {
errors.Add([]string{}, ERR_DESERIALIZATION, err.Error())