scala – 每次都在我的网络应用程序的标题中显示登录用户信息
发布时间:2020-12-16 18:04:20 所属栏目:安全 来源:网络整理
导读:我正在与安全的社交整合进行游戏2.1.截至目前,我能够使用SALAT将securesocial与mongod db集成.现在我可以登录/注销.但现在我想要的是如果用户已登录,那么我需要在我的Web应用程序的标题中显示像头像等用户信息,我不知道如何在 scala.html中获取用户信息而不
我正在与安全的社交整合进行游戏2.1.截至目前,我能够使用SALAT将securesocial与mongod db集成.现在我可以登录/注销.但现在我想要的是如果用户已登录,那么我需要在我的Web应用程序的标题中显示像头像等用户信息,我不知道如何在
scala.html中获取用户信息而不传递params控制器.我不能每次都这样做.
我们是否有类似于spring security的东西,它可以从会话中获取用户并使用EL或spring taglib来显示用户信息??? 解决方法
遗憾的是,这个社区非常不活跃或者不想回答这个问题.即使在几年之后,我仍然会发现spring和
java社区回答了最基本的问题.所以这就是我所做的.非常欢迎任何改进或建议.
在我的控制器中写了一个方法,它将用户作为隐式方法返回. implicit def user(implicit request: RequestHeader):Option[Identity] = { SecureSocial.currentUser } 将此用户传递给我的模板并使其隐式.想知道为什么它不能直接从控制器使用它.我必须明确传递它,这非常奇怪. @(implicit user:Option[securesocial.core.Identity]) 由于用户信息必须位于所有页面中,因此必须将其包含在主模板或主模板中,调用另一个呈现用户信息的模板.在我的主模板中=> @(title: String,nav: String = "")(content: Html)(implicit user:Option[securesocial.core.Identity]=None) 然后一些查看相关的代码 @if(user.isDefined){ <li> <a href="@securesocial.controllers.routes.LoginPage.logout()"/>Logout</li> }else{ <li> <a href="@securesocial.core.providers.utils.RoutesHelper.login()">Login</a></li> } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |