作者 tangxvhui

更新:json 解析方式

1 package controllers 1 package controllers
2 2
3 import ( 3 import (
  4 + "bytes"
4 "encoding/json" 5 "encoding/json"
5 "errors" 6 "errors"
6 "fmt" 7 "fmt"
@@ -21,7 +22,10 @@ type BaseController struct { @@ -21,7 +22,10 @@ type BaseController struct {
21 } 22 }
22 23
23 func (controller BaseController) BindJsonData(v interface{}) error { 24 func (controller BaseController) BindJsonData(v interface{}) error {
24 - return json.Unmarshal(controller.Ctx.Input.RequestBody, v) 25 + newDecoder := json.NewDecoder(bytes.NewReader(controller.Ctx.Input.RequestBody))
  26 + newDecoder.UseNumber()
  27 + err := newDecoder.Decode(v)
  28 + return err
25 } 29 }
26 30
27 func (controller BaseController) ResponseError(err error) { 31 func (controller BaseController) ResponseError(err error) {
@@ -38,7 +42,6 @@ func (controller BaseController) ResponseError(err error) { @@ -38,7 +42,6 @@ func (controller BaseController) ResponseError(err error) {
38 } else { 42 } else {
39 logs.Error(e.Prefix, e.Message) 43 logs.Error(e.Prefix, e.Message)
40 } 44 }
41 -  
42 } 45 }
43 controller.Data["json"] = protocol.ResponseData{ 46 controller.Data["json"] = protocol.ResponseData{
44 Code: -1, 47 Code: -1,