【已解决】 使用Retrofit,如何处理服务器返回的Json字符串(不是Json数据)?
今天我使用Retrofit去请求一个服务器接口数据,按照流程去创建实体类、接口方法,然后在enqueue()方法中处理结果,但始终没有结果返回,也没有异常抛出,也没报错。
然后我进行断点调试,在处理请求数据结果的地方法发现这样的问题:

Failure(com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 10 path $.data)
我去翻译这句话,大概意思是什么类型预期错误。但它又不报错,我也没遇到过这样的问题,我就很无奈......
于是我直接用ApiPost接口调试工具去请求数据,返现服务器返回的结果不是Json数据,而是这种带反斜杠转义字符的Json字符串,如下图:
我想调试时显示的异常可能跟这个有关。但是自己又不知道怎么去解决,因为我接触过的网络请求都是直接返回Json数据,这种数据我还没处理过。
所以还望有大佬出手相助,十分感谢!
一楼说的可以试试。
已经失败了吧,json语法错误。
实体类定义的类型改为 String