java 412_http 412问题

最近项目发现了一个问题,每次刷新界面,都会提示:

36156b2d3a23c950d888051554da38f9.png

然后点击确定,界面都会出现412

bcd72c04e4c4d7296b92bc8dc1161605.png

再次点击刷新,界面又恢复了,之后再刷新,问题又出现了,再刷新,界面又恢复了,然后得出:

问题只在chrome出现,其他浏览器IE什么的没有发现,打开chrome的开发者模式,这个问题也不会出现;

之后,开始看代码,

注释掉所有的js,发现问题依旧出现。。。

最后定位在java代码,

之前大概是/login post请求直接返回string,通过springmvc的viewResolver直接解析,返回到html,导致每次刷新主页,js会重新请求/login post导致412

@RequestMapping(value = "/login", method =RequestMethod.POST)publicString doLoginHandler(RedirectAttributes attributes, HttpSession session, HttpServletRequest req, HttpServletResponse resp)

{

String toAddress= returnLoginmsg(session, req, resp, "0", userName, password, "0");returntoAddress;

}

修改为

@RequestMapping(value = "/login", method =RequestMethod.POST)publicString doLoginHandler(RedirectAttributes attributes, HttpSession session, HttpServletRequest req, HttpServletResponse resp)

{

String toAddress= returnLoginmsg(session, req, resp, "0", userName, password, "0");

attributes.addAttribute("toAddress", toAddress);return "redirect:index";

}

@RequestMapping(value={"/index"}, method={RequestMethod.GET})publicString doIndex(HttpServletRequest req) {return req.getParameter("toAddress");

}

登陆成功后跳转到/index get请求,再次刷新会直接调取get请求,而不会再次请求/login post。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值