返回
unirest java V3.11.11 绿色版

unirest java

立即下载

小编提示:PC版不适合移动端,如下载有问题点击反馈!

软件介绍

unirest java是一款非常好用的HTTP请求库。快速配置HTTP请求就来unirest java。在设计Web程序或本地程序时,可能需要配置HTTP请求。使用此软件可以快速部署请求计划。该软件可以配置GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS和其他类型的请求。提供了一种简单的即时内存响应缓存机制,其中包括一些用于项目过期的选项,您可以使用默认值expiration选项将其启用,或者用户可以提供自己选择的缓存支持的自定义缓存,建议在高负载系统中,使用者使用专用的缓存实现(例如EHCache或Guava)来支持缓存。如果您需要简化的轻量级HTTP客户端库,则可以下载Java Unirest!

官方教程:

使用Maven安装:

unirest java

要求

因此,您可能想知道使用Unirest如何使使用Java创建请求更容易。这是一个基本的POST请求,它将解释所有内容:

unirest java

调用as [Type]()请求时,可能的类型包括Json,String,Object Empty和File。

路线参数

有时想向URL添加动态参数。您可以通过在URL中添加一个占位符,然后使用routeParam函数设置路由参数来轻松实现此目的,例如:

unirest java

占位符{fruit}将被替换为apple。

占位符的格式就像括号一样简单:{custom_name}

所有数值都将为您进行URL编码

默认基本URL

您可以为所有不包含完整URL的请求配置默认基本URL。

此配置将导致GET进入“ http://homestar.com/runner”

unirest java

查询参数

可以一一创建查询字符串参数

unirest java

同样,所有参数值都将被URL编码。

您还可以将查询字符串作为数组和映射传递:

unirest java

标头

标头方法可用于添加请求标头。

unirest java

基本认证

在需要时,Unirest公开了执行基本身份验证的快捷方式。 Unirest处理Base64编码部分。请确保您始终通过HTTPS执行此操作!

unirest java

实体组织

您可以轻松发布实体ob

作为整个身体。这是大多数REST服务的默认行为。

除非另行指定,否则默认的Content-Type值为text / plain;字符集= UTF-8

unirest java

您还可以使用配置的ObjectMapper发布为序列化的对象。 (有关实现的详细信息,请参阅对象映射器。Unirest带有默认映射器,它将使用流行的Google Gson库序列化为json。

unirest java

对象映射器

unirest java

Unirest根据流行的JSON库(Jackson和GSON)提供了一些不同的Object Mappers。这些可以作为传统或带阴影的罐子包括在内:

unirest java

对象或JSON解析错误

您不能总是得到想要的东西。有时,您从Web服务获得的结果不会映射到您期望的结果。当asObject或asJson请求发生这种情况时,结果主体将为null,但是响应对象将包含ParsingException,该异常使您可以获取错误和原始主体进行检查。

unirest java

映射错误的对象

有时,当使用REST API时,服务将返回一个可以解析的错误对象。您可以选择将其映射到POJO等

unirest java

在没有对象映射器的情况下将一种身体类型映射到另一种

如果您不想提供完整的ObjectMapper实施,则可以使用一个简单的函数来映射响应

常见问题:

升级到Unirest 3.0

Unirest 3的主要区别在于,使用Google Gson作为引擎的org.json接口的无尘室实现取代了org.json依赖项。

什么?为什么?

是由于与org.json许可发生冲突,该许可要求“该软件用于善良而非恶意”。尽管许多人正确地认为这是愚蠢的并且不能通过法律强制执行,但是诸如Eclipse,Debian和Apache之类的许多组织不允许使用它。

为什么不切换到org.json的Google实现?

几个原因:

它已经维护了好几年了,并且不再与org.json签名匹配。

这可能会导致许多项目禁止的类路径冲突。

我们希望Unirest可以扩展到org.json之外,并提供更多高级本机功能,例如对象映射。

为什么是Gson而不是Jackson?

Gson在精神和方法签名方面最接近org.json,因此被认为采用起来更快。

它很小,很成熟并且只有一个依赖项。

与其他项目相比,杰克逊的冲突要少得多,杰克逊既受欢迎又更复杂。

怎么做?

无需查看org.json类内部即可完成实现。这是通过编写大量的单元测试来记录行为和方法签名,然后简单地更改测试以使用项目自己的类和Google Gson来实现的。

软件功能:

自定义Apache客户端

Unirest在后台使用Apache Http Client。这不是永久性要求。 Unirest的未来版本可能会用其他东西替代Apache。

自定义缓存

您还可以通过实现缓存接口来提供自定义缓存

错误处理

HttpResponse对象具有一些处理程序方法,可以将它们链接在一起以处理成功和失败

JSON回应

当您不需要完整的Object Mapper时,Unirest提供了一种轻量级的JSON响应类型。

档案回应

有时,您只想下载文件,或将响应主体捕获到文件中。 Unirest可以同时做到这一点。只需告诉Unirest您要将文件放在哪里即可。

下载进度监控

如果要上传大文件,则可能需要向用户提供一些时间进度条。您可以通过提供ProgresMonitor来监视此进度

客户证书

如果需要使用自定义客户端证书来调用服务,则可以为unirest提供一个自定义密钥库。您可以传递KeyStore对象或有效的PKCS#12密钥库文件的路径

分页请求

有时,服务将提供寻呼请求。这样做的方法尚未标准化,但是Unirest已经证明了一种跟踪页面直到所有页面用完的机制。您必须提供两个函数来提取下一页。第一个是获取所需格式的HttpResponse,第二个是接下来从响应中提取链接。结果是PagedList的HttpResponse。

软件特色:

1.允许用户将自定义SSLContext注入Config以确保安全性

2.一个自定义拦截器,允许在以下情况下调用

在要求之前

根据要求

发生致命的连接错误时。

3.用与org.json接口匹配的gson支持的本地kong.unirest库替换对org.json的依赖

4.添加一个新的返回类型:(asBytes()和异步版本)将返回原始的byte []数组

5.引入新的HttpStatus常量类以引用Http响应代码。

6.切换ApacheClient以使用Apache的逐出监视器而不是自定义监视器。

7.将对各种Java DateTime类型的本机默认支持添加到内置对象映射器中。所有类型都将序列化为ISO-8601。 json解析会尝试各种ISO变体。

支持的类型:

ZonedDateTime

LocalDateTime

当地日期

日历

日期

精品推荐
猜你喜欢
用户评论