我只想在提供正确的身份验证时进入我的页面,但我也能够访问包含该页面URL的页面。请检查错误
<%@ page session="false" %>
<%
if(request.getSession(false)!=null) {
String name=(String)session.getAttribute("name");
String path=(String)session.getAttribute("dp_path");
String profile_id=(String)session.getAttribute("profile_id");
%>
%html%
<%
}
else {
out.println("<font color=red size=4>You are not Logged In</font><br>Please "
+ "<a href=index.jsp>login</a> to access this page");
}
%>
我该怎么做才能使其正确无误?
答案 0 :(得分:1)
您应该检查用户是否已通过身份验证。不是说有会话。这两个事实是无关的:即使用户未经过身份验证,您也可以进行会话。
在身份验证后在会话中放置一些信息,以区分经过身份验证的访问者与未经身份验证的访问者的会话。
答案 1 :(得分:0)
尝试以下代码
<%
HttpSession session = request.getSession();
String name=(String)session.getAttribute("name");
String path=(String)session.getAttribute("dp_path");
String profile_id=(String)session.getAttribute("profile_id");
if(name!=null) {
%>