有关Retrofit的简单集成攻略,大家可以参考我此前的一篇文章
有关更多API文档的查阅请大家到Retrofit官网查看。

在大家使用网络请求的时候,往往会出现一种情况:需要在拿到服务器返回来的JSON字符串,而Retrofit会默认将Json解析,而又没有直接暴露出拿到Json字符串的方法,经过在网上一定的查阅,再次给大家一个简单的办法,就能够拿到Json字符串。

以下是我们在Api接口中的定义方法

1
2
3
4
5
6
7
//以前我们使用我们定义好的POJO或javabean类作为callback的泛型,以便Retrofit帮我们解析
@POST("/interface/xxxxxx")
void getCouponList(Callback<Coupon> reponse); //但如果我们想获得JSON字符串,Callback的泛型里就不能写POJO类了,要写Response(retrofit.client包下)
@POST("/interface/xxxxxx")
void getCouponList(Callback<Response> reponse);

那么在我们请求接口的时候,只需简单一行代码,就能拿到服务器返回的JSON字符串了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
ZhixueApiUtil.getInstance().getZhixueApi().getCouponList(new Callback<Response>() {
@Override
public void success(Response response, Response response1) {
//注意这里用第一个Response参数的
String jsonString = new String(((TypedByteArray) response.getBody()).getBytes()); //再使用Retrofit自带的JSON解析(或者别的什么)
Coupon coupon = new Gson().fromJson(jsonString, Coupon.class);
......
} @Override
public void failure(RetrofitError error) {
......
}
});

至此,我们就能拿到JSON字符串了,在需要的时候可以用这种办法。
当然,也希望Retrofit以后能够加入相应的API。

如何使用Retrofit获取服务器返回来的JSON字符串的更多相关文章

  1. PHP如何获取Post请求中的Json字符串数据?

    摘自:http://dianjingjiaoyu.blog.163.com/blog/static/18347920820114194642257/ 最近用到ext与PHP交互,ext把json数据p ...

  2. Android 使用Retrofit获取JSON数据

    在大家使用网络请求的时候,往往会出现一种情况:需要拿到服务器返回来的JSON字符串,而Retrofit会默认将Json解析,而又没有直接暴露出拿到Json字符串的方法: 今天测接口的时候,发现当数据正 ...

  3. asp.net mvc4 简单的服务器监控开发之C#获取服务器CPU、RAM、TCP等系统信息(上)

    一.背景 前段时间服务器出了点问题,加上学业愈来愈紧张,写博文分享的时间越来越少.虽然不是第一次在博客园上写经验,但是近期分享的博文得到了不少的朋友支持和指正,在这里内心非常感激和开心.希望以后能认真 ...

  4. java获取服务器IP地址及MAC地址的方法

    这篇文章主要介绍了java编程实现获取机器IP地址及MAC地址的方法,实例分析了Java分别针对单网卡及多网卡的情况下获取服务器IP地址与MAC地址的相关技巧,需要的朋友可以参考下   本文实例讲述了 ...

  5. JAVA获取服务器路径的方法

    1.在JSF环境中获取到ServletContext: 1 2 ServletContext sc = (ServletContext)FacesContext.         getCurrent ...

  6. php cli方式下获取服务器ip

    (未整理....) (1)php cli方式下获取服务器ip [php]  function getServerIp(){          $ss = exec('/sbin/ifconfig et ...

  7. .NET获取服务器信息,如服务器版本、IIS等

    .NET获取服务器信息,如服务器版本.IIS等 .NET获取服务器信息,如服务器版本.IIS版本.数据库大小.网站系统空间占用大小.网站部署路径等等 .NET获取系统环境信息 #region 返回操作 ...

  8. 使用所见即所得文本编辑器编辑文本存入数据库后通过ajax获取服务器json_encode的数据到前台,文本内容上边的html标签不解析

    使用所见即所得文本编辑器编辑文本存入数据库后通过ajax获取服务器json_encode的数据到前台,文本内容上边的html标签不解析 因为我在前台使用了jquery的text()方法,而不是html ...

  9. Android 学习笔记之Volley(六)实现获取服务器的字符串响应...

    学习内容: 1.使用StringRequest实现获取服务器的字符串响应...   前几篇一直都在对服务——响应过程的源码进行分析,解析了整个过程,那么Volley中到底实现了哪些请求才是我们在开发中 ...

随机推荐

  1. POJ 1840 Eqs 暴力

      Description Consider equations having the following form: a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 The ...

  2. static变量在php和java中的生命周期

    1. java的static变量伴随着java虚拟机的退出而消亡,java虚拟机运行期间,static变量一直存在 2. php的static变量只针对一次请求(一次php文件的执行),php文件执行 ...

  3. jQuerySchool

    jQUery

  4. CodeForces 483B Friends and Presents

     Friends and Presents Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I ...

  5. CodeForces 152C Pocket Book

    Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit Status Prac ...

  6. 借助Nodejs在服务端使用jQuery采集17173游戏排行信息

    Nodejs相关依赖模块介绍 Nodejs的优势这里就不做介绍啦,这年头相信大家对它也不陌生了.这里主要介绍一下用到的第三方模块. async:js代码中到处都是异步回调,很多时候我们需要做同步处理, ...

  7. Django 查询很经典的

    版权归作者所有,任何形式转载请联系作者. 作者:petanne(来自豆瓣) 来源:https://www.douban.com/note/301166150/  1.多表连接查询:感觉django太N ...

  8. poj 1502 最短路+坑爹题意

    链接:http://poj.org/problem?id=1502 MPI Maelstrom Time Limit: 1000MS   Memory Limit: 10000K Total Subm ...

  9. ZOJ 3819 Average Score(平均分)

    Description 题目描述 Bob is a freshman in Marjar University. He is clever and diligent. However, he is n ...

  10. 使用Invoke、委托函数

    //Invoke(new MethodInvoker(delegate() //{ // DataBind(); //}));