102 Star 712 Fork 170

DtFlys / forest

2020-08-24 15:04
1216742 dt flys 1594991700 DtFlys

v1.4.0正式版发布了!非常抱歉,由于新增功能比较多,正式版一直延期到现在。

相比1.3.x版本1.4.0版本多了以下这些特性:

  • 文件上传
  • 文件下载
  • 文件上传、下载的进度监听
  • 可扩展自定义注解,绑定拦截器,形成标签化拦截器
  • dataType属性默认为"auto",能自动识别返回数据的类型进行反序列化
  • 重试机制,通过实现Retryer接口扩展重试策略,并也可通过retyer属性指定
  • 基于退避算法的重试策略,并为默认重试策略
  • 根据方法名前缀设置请求类型
  • 添加@Get,@GetRequest,@Post,@PostRequest,@Delete,@DeleteRequest等注解方便简化请求接口的描述。
  • 添加@Query,@Body, @Header注解,相比以前的@DataParam, @DataObject等注解意图更为清晰。

以下是相对于上个预览版本1.4.0-RC4更新内容

新增的特性:

  • feat: 在ForestRequest中添加addBody, replaceBody, getArguments方法
  • feat: 上传文件无需指定Content-Type
  • feat: Header注解修饰的参数
  • feat: 发送GET请求可以带上BODY信息(仅在Httpclient后端下有效)
  • feat: 添加userAgent属性

修复的BUG:

  • fix: Request注解的url为空字符串的情况
  • fix: baseURL不含http://
  • fix: baseUrl会自动删去 / 的问题
  • fix: httpclient后端上传文件服务端500错误
  • fix: contentType、contentEncoding、userAgent等属性为空的情况
  • fix: Content-type和Content-Encoding的优先级问题
  • fix: 不传递依赖spring boot starter
  • fix: 从response头中获取Content-Encoding为空
  • fix: FastJSON序列化Map的问题
  • fix: 打印httpclient中get请求的body内容
  • fix: 使FastJsonConverter支持顺序
  • fix: Content-Type头失效
  • fix: FastJson转换成Map时顺序无效

代码变动:

  • refactor: 转移MethodAnnotationLifeCycle和ParameterAnnotationLifeCycle的所在包
  • refactor: 去掉ForestRequest中的setArguments方法
  • refactor: MappingParameter.type字段改名成target字段
  • refactor: 去掉MappingParameter.query字段,改成type字段
  • refactor: httpclient的url builder统一用一套
  • refactor: Query、Body、Header注解不强制填写value,可修饰对象参数
  • refactor: 包装Httpclient的Get、Head、Options、Trace、Delete方法的Entity
  • refactor: 包装Httpclient的Get、Head、Options、Trace、Delete方法的Entity
  • refactor: Query不强制填写value,可修饰对象参数
  • refactor: 去掉BodyObject和HeaderObject注解
  • refactor: 所有内置注解通过可扩展方式实现
Last committed message: Merge branch 'dev' into gitee-master
Java
1
https://gitee.com/dt_flys/forest.git
git@gitee.com:dt_flys/forest.git
dt_flys
forest
forest

Search