diff --git a/contrib/codecs/websocket/wsjson/wsjson.go b/contrib/codecs/websocket/wsjson/wsjson.go index 8862811e144697c57113787ec5d958bc9a29ab37..286b63699343fe763c0d704738318ea1cbafbb42 100644 --- a/contrib/codecs/websocket/wsjson/wsjson.go +++ b/contrib/codecs/websocket/wsjson/wsjson.go @@ -6,24 +6,9 @@ import ( "gfx.cafe/util/go/bufpool" json "github.com/goccy/go-json" - jsoniter "github.com/json-iterator/go" "nhooyr.io/websocket" ) -var JZON = jsoniter.Config{ - IndentionStep: 0, - MarshalFloatWith6Digits: false, - EscapeHTML: true, - SortMapKeys: true, - UseNumber: false, - DisallowUnknownFields: false, - TagKey: "", - OnlyTaggedField: false, - ValidateJsonRawMessage: false, - ObjectFieldMustBeSimpleString: false, - CaseSensitive: false, -}.Froze() - // Read reads a JSON message from c into v. // It will reuse buffers in between calls to avoid allocations. func Read(ctx context.Context, c *websocket.Conn, v interface{}) error { @@ -59,10 +44,8 @@ func write(ctx context.Context, c *websocket.Conn, v interface{}) (err error) { if err != nil { return err } - st := JZON.BorrowStream(w) - defer JZON.ReturnStream(st) - st.WriteVal(v) - err = st.Flush() + st := json.NewEncoder(w) + err = st.Encode(v) if err != nil { return fmt.Errorf("failed to marshal JSON: %w", err) }