首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

json.Marshal为什么会对[]byte类型进行base64编码处理?

json Marshal默认会对[]byte类型进行base64编码处理 base64.go: package main import ( "encoding/json" "fmt" ) //...golang json Marshal默认对[]byte类型进行base64编码处理(源码里有base64的逻辑),Unmarshal时也只能用[]byte类型接收才能还原。...(如果用interface{}接收,得到的是base64后的内容) type test1 struct { X string Y []byte } type test2 struct { X string...而在进行json处理时,**[]byte** 始终被编码为 base64格式,而不是直接作为utf8字符串输出。 因为JSON规范中不允许一些 ASCII 字符。...图片来自Go-Json编码解码[6],推荐阅读 由此带来的问题及解决 通过对[]byte进行base64编码的方式,解决了[]byte转为字符串后可能不符合JSON规范的问题,但同时,使用base64编码

25510
领券