java - 用户使用 Apache Shiro 和 JSP 重新登录时如何重定向到主页
问题描述
我是 Apache Shiro 和 JSP 的新手。现在,我可以使用 Shiro 登录。但是,如果用户已登录,并且用户在 URL 上直接键入登录页面localhost/testing/login.jsp
,系统会将用户重定向到登录页面,因此用户继续输入用户名和密码,然后用户将永远停留在那里,即使用户名和密码正确。在我的shiro.ini
,我放authc.successUrl = /index.jsp
,它适用于第一次登录,但如果我刚刚提到的场景并且它不会重定向。
这是登录表格
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Login Page</title>
</head>
<body>
<section id="login">
<form name="loginform" action="" method="POST" accept-charset="UTF-8">
<div>
<input type="text" id="username" name="username">
<label for="username">Username</label>
</div>
<div>
<input type="password" id="password" name="password">
<label for="password">Password</label>
</div>
<div>
<input type="submit" value="Login">
<input type="checkbox" id="rememberMe" name="rememberMe">
<label for="rememberMe">rememberMe</label>
</div>
</form>
</section>
</body>
</html>
这是我的部分shiro.ini
文件,
authc.loginUrl = /login.jsp
authc.failureKeyAttribute=loginFailure
authc.successUrl = /index.jsp
# name of request parameter with username; if not present filter assumes 'username'
authc.usernameParam = user
# name of request parameter with password; if not present filter assumes 'password'
authc.passwordParam = pass
# does the user wish to be remembered?; if not present filter assumes 'rememberMe'
authc.rememberMeParam = remember
解决方案
就放
<shiro:authenticated>
<c:redirect url="index.jsp"/>
</shiro:authenticated>
在您的登录页面中的前几行 html
推荐阅读
- javascript - 将字符串解析为具有特定格式的日期对象
- ios - 为什么我不能在 UIPageViewController 中停止页面卷曲动画
- jenkins - emailext attachmentsPattern: '**/target/overview-features.html' 给出异常
- algorithm - 解决这个问题的可能算法
- python - 简单继承的 Cython 编译错误 - 对象没有属性
- arrays - Storing certain array content in a variable
- e2e-testing - 发生 500 xhr 请求时,cypress 测试失败
- javascript - 如何在 react-bootstrap 选择选项中使用翻译
- module - 模块的 NestJs 版本
- api - 为什么我无法显示来自 YouTube 直播的嵌入视频?