关于重复提交

关于重复提交

①重复点击提交按钮

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>
相关推荐
HWL5679几秒前
pnpm(Performant npm)的安装
前端·vue.js·npm·node.js
石小石Orz21 分钟前
浏览器的预检请求OPTIONS到底有什么用?
前端
落雪小轩韩25 分钟前
网格布局 CSS Grid
前端·css
parade岁月27 分钟前
Vue 3 父子组件模板引用的时序陷阱与解决方案
前端
xianxin_32 分钟前
CSS Outline(轮廓)
前端
moyu8432 分钟前
遮罩层设计与实现指南
前端
Pedantic41 分钟前
用 SwiftUI 打造一个 iOS「设置」界面
前端
timeweaver1 小时前
深度解析 Nginx 前端 location 配置与优先级:你真的用对了吗?
前端·nginx·前端工程化
鲸落落丶1 小时前
网络通信---Axios
前端
wwy_frontend1 小时前
React性能优化实战:从卡顿到丝滑的8个技巧
前端·react.js