【AHC】AHC 如何处理分块传输编码(Chunked Transfer Encoding)的响应?

张开发
2026/4/20 6:31:17 15 分钟阅读

分享文章

【AHC】AHC 如何处理分块传输编码(Chunked Transfer Encoding)的响应?
async-http-client 如何处理分块传输编码(Chunked Transfer Encoding)的响应?作者:九师兄发布时间:2026年02月07日问题引入:Flink 实时日志上报中的“半截响应”故障在某大型互联网公司的实时日志分析平台中,我们使用Flink 1.18 + async-http-client 3.0.6构建了一个日志聚合管道:每条用户行为日志经 Kafka 消费后,通过 FlinkAsyncFunction调用内部日志服务(Log API),该服务采用HTTP/1.1 分块传输编码(Chunked Transfer Encoding)返回结构化日志元数据。上线一周后,运维告警显示:约 0.5% 的请求返回了不完整的 JSON 响应,导致下游解析失败。进一步排查发现:日志服务返回的 HTTP 响应头包含Transfer-Encoding: chunkedasync-http-client 的Response.getResponseBody()有时只包含部分 JSON(如{"id":"123","name":"张")

更多文章