Closed
Description
The below code works well with native encoder but not the json-iterator
. When running with json-iterator
, similar error will be returned when trying to unmarshal null into integer pointer:
stringModeNumberDecoder: expect ", but found n, ......
import (
"encoding/json"
"fmt"
)
type Adhoc struct {
ID *int64 `json:"id,string"`
}
func main() {
fmt.Println("Hello, playground")
target := &Adhoc{}
if err := json.Unmarshal([]byte("{\"any\": 123, \"id\": null}"), target); err != nil {
fmt.Print(err)
return
}
fmt.Println(target.ID)
if err := json.Unmarshal([]byte(`{"any": null}`), target); err != nil {
fmt.Print(err)
return
}
fmt.Println(target.ID)
if err := json.Unmarshal([]byte(`{"id": "123"}`), target); err != nil {
fmt.Print(err)
return
}
fmt.Println(*target.ID)
}
Metadata
Metadata
Assignees
Labels
No labels