当前位置:网站首页>golang使用josn.Unmarshal报错:unexpected end of JSON input
golang使用josn.Unmarshal报错:unexpected end of JSON input
2022-08-06 23:00:00 【zyecust】
在go语言中使用Unmarshal()解析来自HTTP响应的JSON数据报错:unexpected end of JSON input问题一般是分为以下情况:
当我们在通过http协议访问并读取数据时
}
body, err := ioutil.ReadAll(resp.Body)
err = json.Unmarshal(body, &resDatas)
使用这种Unmarshal()方式进行解析数据,但是报上述错误,
这是因为 json.Unmarshal() 的第一个参数为[]byte的时候,json包会认为这不是一个正确的json包,因此会报错unexpected end of JSON input
解决办法(1): 在使用json.Unmarshal时候,我们先对body进行判断,再进行解析。
if len(body) == 0{
return nil
}
解决办法(2):换掉ioutil.ReadAll()方式,直接从响应主体读取
err := json.NewDecoder(resp.Body).Decode(&resDatas)
这样也可能解决。
边栏推荐
猜你喜欢
随机推荐
基于TCP的网络聊天系统
GZIP文件压缩原理以及实现
Compose 进阶挑战来啦!直播预告 | 8 月 7 日晚 19:30 与 GDE 导师面对面
2022-08-05 第六小组 瞒春 学习笔记
package DotaChessSelfPlay is not in GOROOT以及 relative import paths are not supported in module mode
Embedded Sharing Collection 30
有趣的opencv-记录图片二值化和相似度实现
12条MySQL优化技巧,提速不止十倍!
接口的安全设计的几大要素:ticket,签名,时间戳
Julia two-day fast entry study notes
迄今为止见过最详细的零拷贝技术讲解
LC买卖股票的最佳时机Ⅱ(三种解法详解)
移动平台助力推进智慧型科研院所信息化建设
[C语言刷题篇]链表运用讲解
冰蝎Behinder无法打开,冰蝎Behinder双击无法打开
Those MP3s who are reluctant to delete--modify the ID3tag of mp3 in batches
抖音新接口——关键词月搜查询 API
抖音众多接口展示
dlna 交互步骤-转发
户外移动电源:华宝新能、EcoFlow上演“龙虎斗”
![[ 隧道技术 ] 反弹shell的集中常见方式(一)nc反弹shell](/img/16/4c0ea539ce438fa95d4629dafd1668.png)





![[ 漏洞复现篇 ] OpenSSH 命令注入漏洞 (CVE-2020-15778)](/img/b4/c12c851d3bf8120cdd14d76b2fed1e.png)


