java确认重新提交表单,总提示确认提交表单---刷新页面时

一.问题描述:

在register.jsp页面登录后,后台请求分派到index.jsp,然后每次刷新都会做如下截图提示。

df337c8b457999aa175313c78fb4197a.png

二.背景:

1.Java写的后台

2.浏览器网址登录前和登录后一直是:http://localhost:8080/diary/User.do?action=login

3.在register.jsp页面登录后,后台请求分派到index.jsp

request.getRequestDispatcher("index.jsp").forward(request, response);// 请求分派页面

三.分析

此处register.jsp和index.jsp页面是独立的,登录的表单在register.jsp页面,index.jsp页面没有任何表单。可是为什么会有这样的提示呢?分析页面的过程:

在register.jsp登录页:http://localhost:8080/diary/login.jsp;

登录后:http://localhost:8080/diary/User.do?action=login;

刷新:http://localhost:8080/diary/User.do?action=login;

由于后台是用的请求分派把index.jsp的内容发送到客户端的,而此时客户端的页面网址并不会发生改变,刷新页面时,浏览器请求的是User.do?action=login并不是index.jsp,而User.do?action=login这个请求包含表单提交,所以会提示。

四.解决办法

后台处理register.jsp的servlet将请求分派改为重定向,此时网址会变,问题解决。

response.sendRedirect("index.jsp");

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值