MangoCool

springboot 上传文件超过限制,被全局异常处理捕获并返回,客户端收不到返回值

2018-09-21 18:57:15   作者:MangoCool   来源:MangoCool

简述:使用google插件提交表单,上传文件,当文件大小超过服务限制时,得不到任何返回

看报错日志:

从后台报错日志来看,异常已经被全局异常处理捕获到了,并且也已经完成响应,为什么前端看不到任何返回呢?

查找了很多资料,一直以为是全局返回的缘故,所以一直解决不了,于是转变方向,从上传文件异常方向入手。

终于还是有结果了。博客是这么描述得:springboot 文件上传超过配置文件大小,多次进入异常处理返回,从而多次响应,导致前端拿不到错误信息,不管是不是,试试就知道了。

解决方法,贴代码:

package net.olym.symailp;

import org.apache.coyote.http11.AbstractHttp11Protocol;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.embedded.tomcat.TomcatConnectorCustomizer;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.boot.web.servlet.server.ServletWebServerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.transaction.annotation.EnableTransactionManagement;


@ServletComponentScan
@MapperScan("net.olym.symailp.*.dao")
@EnableTransactionManagement
@SpringBootApplication
@EnableScheduling
public class SymailpBootApplication {

	public static void main(String[] args) {
		SpringApplication.run(SymailpBootApplication.class, args);
	}

    @Bean
    public ServletWebServerFactory tomcatEmbedded() {

        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();

        tomcat.addConnectorCustomizers((TomcatConnectorCustomizer) connector -> {

            // connector other settings...
            // configure maxSwallowSize
            if ((connector.getProtocolHandler() instanceof AbstractHttp11Protocol<?>)) {
                // -1 means unlimited, accept bytes
                ((AbstractHttp11Protocol<?>)
                        connector.getProtocolHandler()).setMaxSwallowSize(-1);
            }
        });
        return tomcat;
    }
}

其中:

就是新加入的,再测试,搞定!


参考文章:

https://blog.csdn.net/a349687999/article/details/81120091

https://blog.csdn.net/wd2014610/article/details/79587161

标签: java springboot 上传文件 超过限制 全局异常处理 捕获 未返回

分享:

上一篇linux 安装mysql5.7 最舒服的方式

下一篇springboot 提交表单和图片,后台对象接收

关于我

崇尚极简,热爱技术,喜欢唱歌,热衷旅行,爱好电子产品的一介码农。

座右铭

当你的才华还撑不起你的野心的时候,你就应该静下心来学习,永不止步!

人生之旅历途甚长,所争决不在一年半月,万不可因此着急失望,招精神之萎葸。

Copyright 2015- 芒果酷(mangocool.com) All rights reserved. 湘ICP备14019394号

免责声明:本网站部分文章转载其他媒体,意在为公众提供免费服务。如有信息侵犯了您的权益,可与本网站联系,本网站将尽快予以撤除。