软件星级:3分
Unirest是一个HTTP请求库,涵盖Node、Ruby、Java、PHP、Python、Objective-C、.NET等多种语言,满足轻量级的特性,可发起GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS请求。
1.能够伪造GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS 这些请求。
2.支持同步/异步请求。
3.支持表单提交,文件上传,自定义实体。
4.支持路径参数
5.支持gzip
6.支持本地的 Basic Authentication
7.自定义超时,并发级别和代理设置。
8.为每个请求自定义默认请求头。
9.自定义HttpClient和HttpAsyncClient
10.自动解析JSON
11.自定义的将返回的json数据转换成Java对象。
自定义HTTP客户端
可以使用以下方法显式设置自己的实现HttpClient和HttpAsyncClient:
Unirest.setHttpClient(httpClient);
Unirest.setAsyncHttpClient(asyncHttpClient);
超时
可以设置自定义连接和套接字超时值(以毫秒为单位):
Unirest.setTimeouts(long connectionTimeout, long socketTimeout);
默认情况下,连接超时(连接到服务器所需的时间)是10000和套接字超时(接收数据所需的时间)是60000,也可以将这些超时中的任何一个设置为零以禁用超时。
默认请求标头
可以设置将在每个请求上发送的默认标头:
Unirest.setDefaultHeader("Header1", "Value1");
Unirest.setDefaultHeader("Header2", "Value2");
也可以清楚这些头信息:
Unirest.clearDefaultHeaders();
并发
如果需要调整同步或异步客户端的性能,可以设置自定义并发级别:
Unirest.setConcurrency(int maxTotal, int maxPerRoute);
默认情况下,maxTotal(池中的总连接限制)200和maxPerRoute(每个目标主机的连接限制)是20。
代理
您可以通过调用来设置代理:
Unirest.setProxy(new HttpHost("127.0.0.1", 8000));
退出申请
Unirest启动后台事件循环,在我们通过调用手动关闭所有线程之前,Java应用程序将无法退出:
Unirest.shutdown();
3.11.05
问题#383 搬迁包的一些问题。