json反序列化坑之gzip
golang
json反序列化
gzip
起初json反序列化在macOS终端中没什么问题,
在vscode运行输出中乱码,在win/Linux终端中乱码,错误输出invalid character '\x1f' looking for beginning of value
查询得知是http反回头中有Content-Encoding gzip
需要gzip解压
解决方法
ungzipbody, _ := gzip.NewReader(resp.Body)
// 使用gzip读取解压
defer resp.Body.Close()
content, _ := ioutil.ReadAll(ungzipbody)
responseData := &ResponseJson{}
json.Unmarshal(content, responseData)