报错解决:Cannot call sendError() after the response has been committed

报错背景:  在做开源项目《瑞吉外卖》时,编写拦截器代码后,前端登录时,后端报错如下:

        

 

思考与思路: 

        Cannot call sendError() after the response has been committed.....意思是,当response已经提交后,不能再sendError()。那也就是说,我在代码中一定是response响应了多次。

        查询相关网文后,理解到:前端与后端进行http交互时,当response后,支持其交互的Socket已经关闭,在Socket关闭状态下,若再response,就会报Cannot call sendError() after the response has been committed.....错误! 

解决:

        发现自己的代码,在方法的最开始就已毫无条件的将任何资源都放行,即 filterChain.doFilter(request, response);当此行代码后,再继续编写执行关于response的代码,就会报错上面的错误。所以,将此行代码注释掉即可。

相关网文链接:

Cannot call sendError() after the response has been committed - 夜无良 - 博客园 (cnblogs.com)

(15条消息) 【SSH问题】java.lang.IllegalStateException: Cannot call sendError() after the response has been committe_一枪尽骚丶魂的博客-CSDN博客

 

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值