使用 Vert.x WebClient 支持内容编码和内容解码

时间:2021-07-01 12:18:18

标签: java vert.x quarkus mutiny

public VertxHttpClient(Vertx vertx) {
    this(vertx, new WebClientOptions().setTryUseCompression(true));
}

当我向请求添加接受编码标头时。

kernelHttpRequest.setHeader("Accept-Encoding", "gzip");

Vert.x-WebClient/3.9.5 忽略此标头,并且我从服务器收到的响应没有“内容编码”标头选项。

相反,它的标题为“Transfer-Encoding”:“chunked”。

"headers": {
        "Transfer-Encoding": [
            "chunked"
        ],

我如何传递 accept-encoding = gzip 并解压缩我从服务器获得的响应,Vert.x-WebClient/3.9.5

1 个答案:

答案 0 :(得分:0)

您应该独立地创建客户端的相应选项:

client = vertx.createHttpClient(createBaseClientOptions().setTryUseCompression(true));

setTryUseCompression 实际上告诉客户端将 accept-encoding 标头设置为 gzip,并在服务器将 content-encoding 标头设置为 {{1} 时解压缩响应}.

这在文档 https://vertx.io/docs/vertx-core/java/#_enabling_compression_on_the_client

中有解释
相关问题