Spring-core 5.2 具有带有解码器的编解码器包,例如支持响应式编程的StringDecoder
。 API 获取Publisher<DataBuffer>
并返回解码Flux<String>
。
我希望找到能够获得 gzipPublisher<DataBuffer>
或Publisher<ByteArray>
并返回未压缩Flux<ByteArray>
的 GzipDecoder,但我没有找到它。
我发现唯一符合我要求的库是 https://github.com/kptfh/gzip-reactive 但它非常不成熟
熟悉成熟的代码吗?
我发现上面的项目从org.eclipse.jetty.http.GZIPContentDecoder复制了代码
我在下面添加依赖项(由 Spring Boot 管理(
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-http</artifactId>
</dependency>
并在地图功能中使用解码方法 例:
GZIPContentDecoder decoder = new GZIPContentDecoder(2048);
return Flux.from(input).map(decoder::decode)
.doFinally(signalType -> decoder.destroy());