关于重复提交

关于重复提交

①重复点击提交按钮

java 复制代码
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(value = "/Test1")
public class Test1 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("来了一次请求");
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }
        resp.sendRedirect(req.getContextPath()+"/Success.html");
      
    }
}

在睡眠阻塞的时候页面一直跳转不过去,在期间一直点请求,算是重复提交

代码执行结果

②请求转发到后端转发去下一个页面后刷新下一个页面(网址栏和刷新圆圈 )

③重定向到下一个页面后点击"后退",再次点击提交

3.以下情况不是重复提交

①.当请求转发到下一个页面后点击"后退",再点击提交

②重定向到后端转发去下一个页面后刷新下一个页面(网址栏和刷新圆圈 )

附录:Test1.html

javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<a href="/test0808/Test1">Test1</a>

</body>
</html>

Success.html

javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h3>成功登录</h3>

</body>
</html>
相关推荐
用户88209321667几秒前
如何优雅拆分一个充斥十几种逻辑的 SDK 回调函数?
前端
Momoly081 分钟前
vue3+el-table 利用插槽自定义数据样式
前端·javascript·vue.js
唯有选择2 分钟前
让你的应用界面好看的基石:Flutter主题Theme使用和扩展自定义字段
前端·flutter
山有木兮木有枝_2 分钟前
告别布局间隙:浮动(float)在网页排版中的高阶应用
前端
满分观察网友z3 分钟前
vue的<router-link>的to里面的query和params的区别
前端
小约翰仓鼠4 分钟前
vue3表格使用Switch 开关
前端·javascript·vue.js
JiangJiang6 分钟前
🔥 面试官:Webpack 为什么能热更新?你真讲得清吗?
前端·面试·webpack
anyup25 分钟前
快崩溃了!华为应用商店已经 4 次驳回我的应用上线
前端·华为·uni-app
Qian Xiaoo39 分钟前
前后端分离开发 和 前端工程化
前端
要加油哦~1 小时前
vue · 插槽 | $slots:访问所有命名插槽内容 | 插槽的使用:子组件和父组件如何书写?
java·前端·javascript