而 Forest 能帮助我很好地将 HTTP 代码和业务代码解耦开来,请求调用者不必关心 HTTP 相关的细节 。
自动拼接 HTTP 的各种参数
包括 URL、Header、Body 等等参数都能依靠 Java 注解来声明 。这里就举一个高德地图的栗子,来看看 Forest 是如何优雅的声明 HTTP 请求接口的:
/*** 高德地图服务客户端接口*/@BaseRequest(baseURL = "http://ditu.amap.com")public interface Amap {/*** 根据经纬度获取详细地址* @param longitude 经度* @param latitude 纬度* @return 详细地址信息*/@Get("/service/regeo")Map getLocation(@Query("longitude") String longitude, @Query("latitude") String latitude);}......Amap amap = Forest.client(Amap.class);// 发送请求查询经纬度Map locationInfo = amap.getLocation("32.1242832", "56.3290434");自动 JSON 和 XML 转换
其实,我们处理 HTTP 的工作时,除了浪费在组装各种请求参数外,大部分时间都花了在序列化和反序列化各种格式的数据上,如 JSON 和 XML 。
以前用 HttpClient,这些重复的机械性工作都要自己来搞,很是麻烦 。
用 Forest 就方便多了,比如要 POST 一个 JSON 对象,直接挂个 @JSONBody 就好了,就是这么清爽 。
推荐阅读
- 印度红茶和中国红茶的区别
- 推荐两款好用的企业级内网穿透软件
- 瑜伽应该怎么练呢?
- 印度红茶产地
- 瑜伽到底好不好呢?
- 怎样才能练好瑜伽呢?
- 瑜伽的效果好吗?
- 治疗失眠的瑜伽体式怎么做?
- 瑜伽教练应该注意哪些比较好?
- 瑜伽经典体式有哪些?
