(JSP) Использование страницы индекса для входа с использованием файлов cookie - PullRequest
0 голосов
/ 06 ноября 2018

У меня была проблема со страницей входа, в частности с файлами cookie, в системе заказа продуктов, над которой я сейчас работаю.

На странице индекса она должна проверять с помощью файлов cookie, является ли текущий пользователь администратором или пользователем или, если его нет, следует перенаправить в форму входа. И каждый раз, когда я вхожу в систему, я сохраняю куки, а затем перенаправляю страницу обратно на страницу индекса, где она будет перепроверяться.

index.jsp

final String COOKIE_USERTYPE = "foodordering.usertype";

Cookie[] cookies = request.getCookies();
String usertype = null;

if(cookies != null) {
    for(Cookie cookie : cookies) {
        if(cookie.getName().equals(COOKIE_USERTYPE)) {
            usertype = cookie.getValue();
        }
    }
}

if(usertype == null) {
    response.sendRedirect("loginForm.html");
} else if(usertype == "user") {
    response.sendRedirect("orderForm.jsp");
} else if(usertype == "admin") {
    out.println("Hello, Admin!");
}

Файлы cookie правильно хранятся в браузере, используя этот код:

login.jsp

String username = request.getParameter("txtUsername");
String password = request.getParameter("txtPassword");

try {
    Class.forName("com.mysql.jdbc.Driver");

    Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/FoodOrdering", "root", "");
    Statement stmt = conn.createStatement();

    ResultSet rs = stmt.executeQuery("SELECT * FROM User WHERE username='" + username + "' AND password='" + password + "'");

    if(rs.next()) {
        response.addCookie(new Cookie("foodordering.usertype", rs.getString("usertype")));
    }

    rs.close();
    stmt.close();
    conn.close();

    response.sendRedirect("index.jsp");
} catch(SQLException e) {
    e.printStackTrace();
} catch(Exception e) {
    e.printStackTrace();
}

С файлами cookie ЕЩЕ НЕ СОХРАНЕНО ( foodordering.usertype ), файл index.jsp работает нормально, так как он правильно отправляет меня на страницу входа, как я и собирался сделать это так.

ПРОБЛЕМА:

Но с данными cookie STORED , index.jsp никуда меня не перенаправляет, а остается.

Я надеюсь, что любой может помочь, и спасибо заранее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...