Retrofit com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept
·
报错:
com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $
原因:是接口返回来的原始数据和要转换成的数据格式不对应导致;
例如我出错的问题如下:
比如接口报错返回一个Html,而且Retrofit请求接口方法,数据要解析成List<ResStoreList>格式的数据;

解决办法:
1,如果刚开始调试接口,那就是Android端和服务端没有约定好接口返回的数据格式;统一数据格式即可;
如果Android端发现不了问题,可以把Retrofit接收端的接口返回数据改成ResponseBody对象这样不管接口返回什么样的数据,都可以解析得到,不会报错了,然后可以根据数据生成具体的对象;

2,如果是已在使用的接口,需要确认一下接口返回来的数据是否有变化;或者是否接口报错导致Retrofit解析错误;
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)