servlet中使用request.getHeader("referer")获取页面从哪跳转过来的

问题

servlet中使用request.getHeader("referer")获取页面从哪跳转过来的,利用这个方法可以判断网页是否正常登录。我做了一个javaweb小项目,其中有登录的jsp页面,当登录成功的时候会跳转到successServlet去执行其他功能,但是这样有一个安全功能,如果有人直接跳过登录界面而直接访问successServlet的话,也会使用我的功能,这样就算没登录也能使用其他功能



解决方法

可以在successServlet中判断是否是从登录界面跳转过来的,而要想判断,需要获取从哪跳转过来的页面url,这时就可以使用request.getHeader("referer"),判断如果是从登录界面跳转的,就正常访问,如果不是就转发到登录界面。

if("https://localhost:8080/webcase/login.jsp".equals(request.getHeader("referer"))){
	//正常使用功能
}else{
	//转发到登录界面
}




posted @ 2020-02-15 16:09  足够优秀再大方拥有  阅读(1306)  评论(0编辑  收藏  举报