Forest v1.5.17 发布,声明式 HTTP 框架,现已 2.1k star

栏目: 软件资讯 · 发布时间: 4年前

内容简介:Forest介绍 Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL、Header 以及 Body 等信息)绑定到您自定义的 Interface 方法上,能够通过调用本地接口方法的方式发送 HTTP 请求...

Forest v1.5.17 发布,声明式 HTTP 框架,现已 2.1k star

Forest介绍

Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL、Header 以及 Body 等信息)绑定到您自定义的 Interface 方法上,能够通过调用本地接口方法的方式发送 HTTP 请求

现已 2.1k star

Forest v1.5.17 发布,声明式 HTTP 框架,现已 2.1k star

 

Forest 如何使用

Forest 不需要您编写具体的 HTTP 调用过程,只需要您定义一个接口,然后通过 Forest 注解将 HTTP 请求的信息添加到接口的方法上即可。请求发送方通过调用您定义的接口便能自动发送请求和接受请求的响应

Forest 的工作原理

Forest 会将您定义好的接口通过动态代理的方式生成一个具体的实现类,然后组织、验证 HTTP 请求信息,绑定动态数据,转换数据形式,SSL 验证签名,调用后端 HTTP API(httpclient 等 API)执行实际请求,等待响应,失败重试,转换响应数据到 Java 类型等脏活累活都由这动态代理的实现类给包了。 请求发送方调用这个接口时,实际上就是在调用这个干脏活累活的实现类

文档和示例

重点更新内容

动态正向代理来源

定义一个实现 HTTPProxySource 接口的类

// 自定义正向代理来源类
// 可以根据请求对象的信息来动态产生该请求所需的正向代理信息
public class MyHTTPProxySource implements HTTPProxySource {
    @Override
    public ForestProxy getProxy(ForestRequest request) {
        //  request.variableValue 方法可以获取全局或请求变量
        // 返回值将以 ForestProxy 类对象形式包装正向代理信息
        return new ForestProxy("127.0.0.1", (Integer) request.variableValue("port"));
    }
}

 

在接口中绑定

// 通过 HTTPProxy 注解的 source 属性指定自定义的正向代理来源类
@Post("/data")
@HTTPProxy(source = MyHTTPProxySource.class)
ForestRequest<String> sendData(@Var("port") int port);

本次更新

新增特性

修复问题

其它更新

  • refactor: 去掉 NameUtils 工具类中重复的if分支

特别鸣谢

本次更新有 @chming 参与贡献,万分感谢!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

结网

结网

王坚 / 人民邮电出版社 / 2010-4 / 55.00元

本书作者一直从事互联网产品的研究和实战,经验丰富,同时作为导师,指导了大量优秀的产品经理,本书的内容也是作者8年来培养产品经理新兵的经验集萃。如果你缺乏培养产品经理的教材,本书正好总结了产品经理知识体系,无疑是你很好的选择。 本书覆盖了相当全面的互联网知识,对于想要了解互联网行业或想要借助互联网进行营销的人来说,都是很好的入门读物。 本书并不是一本完善的互联网创业指南,而是写给胸怀互联......一起来看看 《结网》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

URL 编码/解码
URL 编码/解码

URL 编码/解码