DataBufferLimitException: Exceeded limit on max bytes to buffer :262144

  • Post author:
  • Post category:其他


Spring Boot Version: (v2.6.3)

背景: 通过网关gataway服务调用业务模块服务时网关抛出此异常

DataBufferLimitException: Exceeded limit on max bytes to buffer :262144

解释:缓冲区最大设置内存262144

源码:

在这里插入图片描述

max最大值为256 * 1024 所以当文件大小超过256k时回抛出此异常

解决办法:

在网关gataway的配置文件中加入如下代码

spring:
  codec:
    max-in-memory-size: 1048576
    
  注:此方法好像对版本有要求 在spring boot 2.2.1 之后版本 有时不生效

方法二:

源码的类路径为 package org.springframework.core.codec;
此时我们可以自己重写此方法
在网关gataway中创建相同路径的文件,并修改max最大值为100 * 1024 * 1024 即100M(亲测有效)

在这里插入图片描述

在这里插入图片描述



版权声明:本文为scdn_wyy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。