猿问

使用 Thymeleaf 在脚本标签中发送安全参数

我正在尝试在脚本标签中发送一个参数,如下所示:

<script th:src="@{/js/myScript.js(arg0=${value})}"></script>

其中 value 是以下结果:hasAuthority('USER')

所以,我试过这个:

<script th:src="@{/js/myScript.js(arg0=${hasAuthority('USER')})}"></script>

但这不起作用:

Caused by: org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "hasAuthority('USER')" (template: "groups" - line 61, col 9)
Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1004E: Method call: Method hasAuthority(java.lang.String) cannot be found on org.thymeleaf.spring4.expression.SPELContextMapWrapper type

我之前使用过这个函数来显示 div 没有问题:

<li sec:authorize="${hasAuthority('ADMIN')}">


墨色风雨
浏览 166回答 1
1回答

牧羊人nacy

尝试这个。<script&nbsp;sec:authorize="${hasAuthority('USER')}"&nbsp;th:src="@{/js/myScript.js(arg0=ADD_VALUE_HERE)}"></script>如果您有正确的权限,这只会加载这个特定的 js。对于您的情况,只需根据需要更改 js 参数的值。
随时随地看视频慕课网APP

相关分类

Java
我要回答