Skip to content

v1.8.0

Latest

Choose a tag to compare

@mySingleLive mySingleLive released this 10 Oct 10:20

Forest v1.8.0 版本发布了,此次版本升级主要支持了响应式接口,声明式接口和编程式接口都能支持将 Flux 和 Mono 作为响应返回类型。

支持响应式

在使用响应式特性钱,需要先新增以下 Maven 依赖

<dependency>
  <groupId>com.dtflys.forest</groupId>
  <artifactId>forest-reactor</artifactId>
  <version>1.8.0</version>
</dependency>

新版本 Forest 支持在声明式接口中,使用 Flux 或 Mono 作为响应数据的返回类型

public interface ReactorClient {

   // 支持 Flux 作为返回类型
    @Get("/flux")
    Flux<String> testFlux();

    // 支持 Mono 作为返回类型
    @Get("/mono")
    Mono<String> testMono();

}

支持 SSE 转 Flux

Forest.get("/sse")
    .sse(ReactorSSE.class) // 使用 ReactorSSE 类
    .setOnMessage((event, sink) -> {
        String data = event.value(String.class);
        sink.next("data: " + data); // 发布消息
    })
    .toFlux(String.class) // 转化为 Flux<String> 类型
    .subscribe(name -> {
        // 订阅消息
        System.out.println("value -> " + name);
    });

新增特性

  • feat: 支持 Flux 作为响应返回类型
  • feat: 支持 Mono 作为响应返回类型
  • feat: 支持 SSE 转 Flux

修复问题

  • fix: SSE 在 AUTO 模式下无法识别某些字符串格式的问题