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
答案 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
中有解释