请求重定向

释放双眼,带上耳机,听听看~!

实现方式

第一种:通过302和Location配合的使用,实现重定向

public class TestClass extends HttpServlet {
    private static final long serialVersionUID = 1L;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setStatus(302);
        response.setHeader("Location", "https://www.baidu.com");
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }
}

第二种:通过sendRedirect(”URL”)方法

写一个简易表单

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Insert title here</title>
    </head>
    <body>
        <form action="http://localhost:8080/Demo_04/TestClass" method="get">
            用户名:<input type="text" name="userName">
            密码:<input type="password" name = "pw">
            <input type="submit" value="登陆按钮">
        </form>
    </body>
</html>

跳转

public class TestClass extends HttpServlet {
    private static final long serialVersionUID = 1L;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String name = request.getParameter("userName");
        String pw = request.getParameter("pw");
        if(name.equals("123")&& pw.equals("qwe")) {
            response.sendRedirect("https://www.baidu.com");
        }else {
            response.setContentType("text/html;charset=utf-8");
            response.getWriter().print("账号密码错误");
        }
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }
}

重定向的特点

1,浏览器地址栏发生变化
2,发送了两次请求,且都是由浏览器发送的请求

重定向的路径

由于是浏览器发送得到的请求,所以路径必须要带上项目名称

给TA买糖
共{{data.count}}人
人已赞赏
知识分享

定时刷新与定时跳转网页

2020-9-20 22:45:00

知识分享

通过Java程序调用高德开放API_IP定位

2020-9-20 22:47:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索