解决retrofit+okhttp+rx框架返回数据解析异常

来源:互联网 发布:知乎 冥想导致失眠 编辑:程序博客网 时间:2024/05/17 02:39
这是返回的数据类型:
{  "error": false,   "results": [    {      "_id": "58c259ce421aa90f03345158",       "createdAt": "2017-03-10T15:46:22.219Z",       "desc": "\u7f16\u7801\u4e2d\u964c\u751f\u5355\u8bcd\u4e0d\u8ba4\u8bc6\uff1f\u662f\u65f6\u5019\u6253\u9020\u4e00\u6b3eAndroidStudio\u5355\u8bcd\u5907\u5fd8\u63d2\u4ef6\u4e86",       "publishedAt": "2017-03-15T11:47:17.825Z",       "source": "web",       "type": "Android",       "url": "http://www.jianshu.com/p/760c98f682ea",       "used": true,       "who": "bolex"    }
   ]
}
然后这是封装的实体类:
public class ResponseResult<T> {    private boolean error;    private T result;    public boolean isError() {        return error;    }    public void setError(boolean error) {        this.error = error;    }    public T getResult() {        return result;    }    public void setResult(T result) {        this.result = result;    }
一开始无论怎样,rx在onNext中返回总是null后来多番对比发现,原来自己封装的实体中的返回字段key值一定要与后台接口返回的相同才行,也就是一定要是results差一个字母都不行。之前的时候用gson时记得只要@ParamNames("key值")里的key值与后台返回相同就行,但是不知道怎么回事在这个里面就一定要一模一样才行。记录一下,以免其他伙伴入坑。
0 0