关于springmvc重定向后Cannot create a session after the response has been committed问题
首先先上代码吧,我在用springmvc进行response.sendRedirect(url);操作后报了Cannot create a session after the response has been committed错误。
@RequestMapping(value={"","/"}) public String index(HttpServletResponse response,HttpServletRequest request) throws Exception{ // String callbackurl = "http://127.0.0.1:8080/sucstepms/index/goqrcodescansign"; String callbackurl = request.getRequestURL().toString(); Authorize au = new Authorize(appKey, appSecret); String code = request.getParameter("code"); String url = au.forwardurl(callbackurl, "test", Authorize.DISPLAY_TAG_T.WEB); if ( code == null || code.isEmpty() ){ response.sendRedirect(url); return null; }else{ String text=au.querytoken(code, callbackurl); Map<String, Object> map=JSON.parseObject(text); String token=(String) map.get("access_token"); if(token==null){ response.sendRedirect(url); return null; }else{ User user=new User(token); System.out.println(user.me()); System.out.println(text+"--------------"); } } return "sign/front/guide"; }
在之前是没有加return null的,在执行重定向后悔跳到最后执行springmvc的return 页面操作。所以会报这个错误。所以解决办法就是加上return null;
我觉得这个问题的主要原因就在重定向response提交后,后面springmvc继续重定向了页面,或者多session有某些操作,所以会报这种错误。
本文作者:ZzUuOo666
本文链接:https://www.cnblogs.com/zzuuoo666/p/8598969.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步