Closed
Description
encoding/json
allows non-numeric strings as json.Number
while jsoniter
requires that the string be a number. For instance, given:
package main
import (
"fmt"
jsoniter "github.com/json-iterator/go"
)
func main() {
b := []byte(`{"test":"blah"}`)
outputs := map[string]jsoniter.Number{}
err := jsoniter.Unmarshal(b, &outputs)
if err != nil {
panic(err)
}
fmt.Printf("%#v\n", outputs)
}
jsoniter
panics with:
panic: readNumberAsString: invalid number, parsing 8 ...{"test":... at {"test":"blah"}
goroutine 1 [running]:
main.main()
m.go:16 +0x1a0
while encoding/json
outputs:
map[string]json.Number{"test":"blah"}
Metadata
Metadata
Assignees
Labels
No labels