Thymeleaf + Spring Security表达式语言

时间:2015-10-04 01:55:22

标签: spring-security spring-boot thymeleaf

我试图从Thymeleaf那里获取Spring Security中的UserDetails对象。我尝试了各种SpEl,比如:

${#authentication.principal.blahblah}

我试图将此分配给Javascript变量:

var foo="${#authentication.principal.blahblah}";

我使用Spring Boot 1.2.5并声明了thymeleaf-extras-springsecurity4依赖项。

2 个答案:

答案 0 :(得分:3)

尝试

<script th:inline="javascript">
var foo = /*[[${#authentication.principal.blahblah}]]*/;
</script>

答案 1 :(得分:0)

仅使用模式/*[[${#authentication.principal.username}]]*/可能会像异常一样发生NPE。所以我通常在下面使用表达式。

/*[# sec:authorize="isAuthenticated()"]*/
const loginUserName = /*[[${#authentication.principal.username}]]*/ 'admin'
/*[/]*/