精彩评论
- sss(5年前 (2019-12-13))
可以
评:Docker简介 - gvfdg(5年前 (2019-12-13))
gfd
评:Docker简介 - fd(5年前 (2019-12-13))
grd
评:Docker简介 - ssj(5年前 (2019-12-13))
666
评:Docker简介 - zws_shan(5年前 (2019-12-13))
评论
评:docker-compose安装
2019-12-16 分类:go 作者:北漂程序员 阅读(2269)
序列化和反序列化
1 2 3 4 5 6 7 | 序列化概念理解:就是将变量从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,在其他语言中也被称之为serialization,marshalling,flattening等等,都是一个意思。序列化之后,就可以把序列化后的内容写入磁盘,或者通过网络传输到别的机器上。 反过来,把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickling。 go json序列化?就是将go对象,例如map对象转化成json格式字符串这种操作,就是go json序列化。 go json反序列化?就是将go json字符串转换成go中 map对象的形式,就是go json反序列化 |
原生go请求接口
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | func VideoSet(w http.ResponseWriter, r *http.Request) { body := ReadBody(r) configIn := model.ConfigIns{} if err := json.Unmarshal([]byte(body), &configIn); //反序列化json格式 err != nil { logrus.Error("保存配置json解析异常:", err) //io.WriteString(w, com.ToJsonString(com.Result{Status: 201, Msg: to.String(err)})) return } } func ReadBody(r *http.Request)string{ bs,err:=ioutil.ReadAll(r.Body) //ReadAll 读取r中的所有数据 if err!=nil{ return "" } return string(bs) } |
封装go请求接口("github.com/ant0ine/go-json-rest/rest")
1 2 3 4 5 6 7 8 9 10 11 12 | func(self *AddRoad) TakeBody(body interface{}) (result interface{},err error){ obj,_:=json.Marshal(body) //序列化json格式 configIn := models.AddRoadTemp{} if err := json.Unmarshal([]byte(obj), &configIn); err != nil { logrus.Error("保存配置json解析异常:", err) return tools.Result{ Status:"201", Msg:err.Error(), },nil } } |
「三年博客,如果觉得我的文章对您有用,请帮助本站成长」
谢谢支持
上一篇:Go语言的goroutine
可以
评:Docker简介gfd
评:Docker简介grd
评:Docker简介666
评:Docker简介评论
评:docker-compose安装
共有 0 条评论 - go接口数据解析