http请求大家都比较熟悉了,无论是使用JDK自带的httpurlconnection抑或是apache的httpcomponent或者是okhttp,都能比较轻松便捷的发送业务请求,区别只是在于代码量的多少了。今天主要和大家说了unirest-java这个基于apache httpcomponent的工具,api更为便捷、高效,官网地址为:http://unirest.io/,而且可以看到,除了Java的api,还提供了Python、PHP、Nodejs等不同语言的支持。顺带说一句,unirest-java的github地址为https://github.com/kong/unirest-java/,其另外一个很牛逼的开源产品就是微服务的api网关kong:)
示例接口
为了方便后续的例子,我这边提供了几个示例接口:
- demo/userGeneration?page=&rows=:根据请求提供的count,随机生成count个用户数据。每个用户的数据,包括id、用户名:随机5位字符;性别:随机M(男性)或者F(女性),此接口需要使用POST方法,另外为了方便前台的分页显示,对结果进行了封装,为:{rows:,total:[]}的格式(其实就是easyui画的界面),参数page为当前页面,rows为每页的记录条数。
- demo/user/{id}:返回id的用户信息,需要使用GET方法
- 所有的接口要求在请求的header里面包括字符串Auth:demo,这个在实际业务当中会有比较常见的认证信息
请求示例
万事第一步,建工程、改pom:
com.konghq unirest-java 2.3.17
首先我们看下POST方法的demo/userGeneration:
String result = Unirest.post(URL + "/generateUser") .header("Auth