本文主要是介绍《Andorid okhttp返回json数据:com.squareup.okhttp.internal.http.RealResponseBody@2b88614》,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、开发背景:客户端用http请求发送数据请求,需要后台返回一个json格式的数据。
二、历程:1.一开始获取之后以为肯定可以用了,就直接用gson解析;
2.进入这个坑可想之后。 这种情况下gson提醒格式不对;
3.郁闷的我开始排查,终于找到了原来是获取json格式数据的时候错误。
三、先看代码:
public void getUrlDate(String urlPath) {if (urlPath != null) {OkHttpClient mHttpClient = new OkHttpClient(); //新建okHttpClient对象Request request = new Request.Builder() //发送请求.url(urlPath).build();mHttpClient.newCall(request).enqueue(new Callback() { //获取返回的值@Overridepublic void onFailure(Request request, IOException e) {}@Overridepublic void onResponse(Response response) throws IOException {String json = response.body().toString(); //出错的位置Log.e("json", "onResponse = " + json);
// Gson gson = new Gson();
// oilInfo = gson.fromJson(json, OilInfoBean.class);
// Log.e("json", oilInfo.toString());}});} else {Log.e("error", "未获取到url");}}
四、问题就处在这儿,我一开始是直接
1.不行
String json = response.toString();
2.不行
String json = response.body().toString();
打印:
onResponse = com.squareup.okhttp.internal.http.RealResponseBody@2b88614
五、处理方法
String json = response.body().string();
这篇关于《Andorid okhttp返回json数据:com.squareup.okhttp.internal.http.RealResponseBody@2b88614》的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!