net::ERR_INCOMPLETE_CHUNKED_ENCODING解决

1、报错含义

ERR_INCOMPLETE_CHUNKED_ENCODING:分块传输编码不完整 服务端用 Transfer-Encoding: chunked 流式返回数据,但连接中途被强制断开,浏览器没收到完整数据块,接口直接失败。

2、常见根因(按排查优先级排序)

1. 后端服务异常(最高概率)

  1. 接口代码抛异常崩溃 findEnum/ loginMenu 内部逻辑报错(空指针、SQL 超时、循环死锁、OOM 内存溢出),服务进程 / 线程直接中断 TCP 连接,没输出结束 chunk 标识。
  2. 接口执行超时
    • 数据库查询慢、大量枚举 / 菜单数据一次性加载耗时过长
    • Nginx、Tomcat、SpringBoot 超时阈值太短(默认 60s/30s),网关主动切断长请求
  3. 服务内存 / CPU 打满 JVM 堆溢出、服务器 CPU100%,无法完成数据输出,强制断连。

2. 反向代理 / Nginx 配置问题

  1. Nginx proxy_buffer 缓冲区过小,大报文溢出直接断流;
  2. proxy_read_timeout、proxy_send_timeout 超时时间太短;
  3. 开启 gzip+chunked 冲突、代理转发时未完整透传流数据。

3. 前端请求层面

  1. 前端主动取消请求:页面切换、路由跳转、组件销毁时 axios.cancelToken 中断请求;
  2. 并发请求过多,浏览器 / 服务端限流丢弃连接;
  3. 本地网络波动、VPN / 代理软件中断 TCP 链路。

4. 服务器 / 网络层

防火墙、安全组、WAF 拦截长连接,认为流量异常主动断开; 容器(Docker/K8s)资源限制,OOM kill 掉服务进程。

3、快速临时验证手段

  • Postman 直接调用接口 :绕过前端,单独请求 报错接口
    • 如果 Postman 也报错 → 后端 / 网关问题;
    • 如果 Postman 正常、仅浏览器报错 → 前端主动取消或浏览器网络限制。
  • 简化接口返回:临时让接口只返回少量测试数据,若不再报错,证明是数据量大 / 执行慢导致。

4、NGINX解决方案

修改点

报错本质:chunked 流式响应被中途切断,分两类配置要改:

  1. 超时时间(读取后端数据、转发超时拉长)
  2. 代理缓冲区(大 json / 菜单枚举数据缓冲不足)

修改配置

业务反向代理一般写在 conf.d/你的项目.conf 里。找到类似下面的 location 代理后端服务的代码块,所有修改写在 location / { ... } 内部。

复制代码
location / {
    proxy_pass http://127.0.0.1:8080; # 你的后端地址不要改
    
    # ========== 新增/修改以下所有配置 ==========
    # 连接后端超时
    proxy_connect_timeout 300s;
    # 从后端读取响应超时(关键!菜单/枚举加载慢就调大)
    proxy_read_timeout 300s;
    # 向后端发送请求超时
    proxy_send_timeout 300s;

    # 调大缓冲区,解决大json chunk截断
    proxy_buffer_size 256k;
    proxy_buffers 8 128k;
    proxy_busy_buffers_size 256k;

    # 关闭缓冲,强制流式完整输出(chunked专用)
    proxy_cache off;
    proxy_buffering off;

    # 透传真实请求头(保留原有)
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

最小配置

复制代码
proxy_read_timeout 300s;
proxy_buffer_size 256k;
proxy_buffers 8 128k;
proxy_buffering off;
相关推荐
lpfasd1231 天前
WinSW在Win7上失败真相-实测与修复
windows·nginx
lpfasd1231 天前
nginx服务化五套方案原理解剖与选型
运维·nginx
ue星空2 天前
ALS V4 中文拆解手册
运维·nginx
吴声子夜歌2 天前
Nginx应用与运维——Nginx集群负载与配置管理(二)
运维·nginx
cpolar技术支持2 天前
外网测试机的异常传不回内网?自托管 Sentry,用 cpolar 打通错误上报链路
python·nginx·docker·cpolar·sentry
吴声子夜歌3 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(一)
运维·nginx·kubernetes
螺蛳粉 螺蛳粉3 天前
第一篇:Keepalived 高可用实战:VIP 漂移与 Nginx 主备切换完整指南
运维·nginx·负载均衡·keepalived·高可用
吴声子夜歌3 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(三)
运维·nginx·kubernetes
吴声子夜歌3 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(二)
运维·nginx·kubernetes
Wang's Blog3 天前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx