当前位置: 首页 > 知识库问答 >
问题:

如何在JSP中检查是否记录了用户(使用JSTL语句),并显示用户名?

芮博厚
2023-03-14

我知道在SO上有很多类似的问题--其中大多数是指用servlet过滤器实现这个概念。

我使用的是基于表单的声明式安全方法。并且,当一些用户在登录表单上输入他(或她)的凭据(用户名和密码)时,他将被重定向到特定的/安全的jsp页面。该页面内容的一部分是:

Hello <%=request.getUserPrincipal().getName().toString()%>
    You are able to view this page because you are authorized user.

现在,如果用户已登录,我将显示他/她的用户名,无论其是否安全的jsp页面。类似这样的事情:

<c:if test="${statement that checks if some user is logged in}">
   User: ${username of the logged user here}
</c:if>

编辑我还想用适当的JSTL命令替换JSP scriptlet部分:<%=Request.GetUserPrincipal().GetName().ToString()%>

共有1个答案

华献
2023-03-14
<c:if test="${not empty pageContext.request.userPrincipal}">
    User: <c:out value="${pageContext.request.userPrincipal.name}" />
</c:if>

使用c:out可以正确转义打印值并防止XSS攻击。

 类似资料:
  • 我在我的Dart/Flatter应用程序中使用Firebase云消息。下面的代码使用检索到的android通知令牌更新用户文档。 然后,我在我的云函数中读取。非常有效,但我错误地认为如果用户关闭了通知(例如,空或空),令牌将无效。确定是否为我的云应用程序功能启用通知的最佳方法是什么?我在我的搜索中发现了一些命中率,但很多已经过时,或者是针对不同的开发环境。

  • 问题内容: 我正在尝试创建一个Facebook iFrame应用。该应用程序应首先显示图像,如果用户喜欢该页面,则可以访问某些内容。 我使用RoR,因此无法使用Facebook PhP SDK。 当用户不喜欢该页面时,这是我的iFrame HTML: 并且,如果用户喜欢该页面: 问题答案: 如此答应的是我只使用javascript的答案: 页面正文的内容: CSS: 最后是javascript:

  • 我正在构建一个对Azure AD进行OAUTH身份验证的Web应用程序。我的意思是,您通过您的Azure AD/Office e365帐户登录我的应用程序。登录成功后,我将Azure AD用户的GUID与我的Mysql数据库中的用户匹配。我在用户登录的会话信息中设置。 我使用这个howto作为它的基础:https://kv AES . WordPress . com/2016/10/21/azur

  • 问题很简单。我想限制来自不同机器/浏览器的相同登录的用户访问:只有一个实时用户会话是可能的。 库用于用户认证和管理。 当然,这可以使用简单的同步化地图等来完成。但问题是:是否为此制定了特殊机制? 这个问题的另一个变体:如何检索使用< code>apache shiro登录系统的所有主题的列表? UPD: 澄清我的问题。我的愿望是有一些这样的代码(我知道,没有这样的类异常,但这个想法必须更干净):

  • 问题内容: 我正在看这个网站,但似乎无法弄清楚该怎么做,因为它不起作用。我需要检查当前站点用户是否已登录(已验证),并且正在尝试: 尽管确定用户已登录,但它仅返回: 我可以执行其他请求(来自上面url的第一部分),例如: 这将返回成功的响应。 问题答案: Django 1.10+更新:现在是Django 1.10中的属性。为了向后兼容,该方法仍然存在,但在Django 2.0中将被删除。 对于Dj

  • 问题内容: 我通过单击具有特定类的div来调用下面的函数。 有没有一种方法可以在启动功能时检查用户是否正在使用Internet Explorer并在用户使用其他浏览器时中止/取消它,以便仅为IE用户运行?这里的用户都将使用IE8或更高版本,因此我不需要介绍IE7和更低版本。 如果我能告诉他们使用的是哪种浏览器,那很好,但是不是必需的。 示例功能: 问题答案: 使用以下JavaScript方法: 您