我希望将javascript代码的一部分取决于下面的权限,这是免费标记代码。
<script type="text/javascript"></br>
var openAuthorityOperatorData = false;
$(function() {
$('#dlg_operator_auth_search_form').dialog({
autoOpen: false,
width: 500<@security.authorize access="hasRole('AUHOA00000')"> + 450</@security.authorize>,
height: 550,
dialogClass: 'dialog-shadow',
modal: false,
resizable: false...
})});
</script>
使用thymleaf,我只能找到一种将权限属性放入脚本元素的方法,如下所示。
<script sec:authorize="hasAnyRole('AUCOP0000x','AUUOP0000x')" type="text/javascript">
$(function() {
});
</script>
如果我不能使用顶级代码之类的东西,我可以使用jstl和thymeleaf来实现目标吗?
答案 0 :(得分:2)
Thymeleaf需要有效的HTML5 / XHTML / XML模板才能工作,因此无法将其与JSTL结合使用。
但是,您可以在Thymeleaf中使用脚本内联。 Spring Security extras插件还提供了authorization
实用程序对象。
<script th:inline="javascript">
var w = /*[[${#authorization.expression('hasAnyRole(''AUCOP0000x'',''AUUOP0000x'')')} ? ${500} : ${950} ]]*/ 500;
...
width: w,
...
</script>
<强>来源强>