&符号在Thymeleaf中解析为&

时间:2019-05-24 07:59:08

标签: javascript java parsing thymeleaf

这是我的百里香模板:

<html lang="en">
<head>
    <script>
       function postForm() {
          window.location.href = '[[${azSsoUrl}]]';
       }
    </script>
    <title></title>
</head>
<body onload="postForm()">
</body>
</html>

azSsoUrl的实际值:

http://localhost:8080/gc-restful/sso-login?spEntityID=someId&metaAlias=%2FEmployee;

但是在解析之后,这就是我在响应中得到的。请注意,&变为
&amp;

<html lang="en">
<head>
    <script>
       function postForm() {
          window.location.href = 'http://localhost:8080/gc-restful/sso-login?spEntityID=someId&amp;metaAlias=%2FEmployee;';
       }
    </script>
    <title></title>
</head>
<body onload="postForm()">
</body>
</html>

我不确定,使用[[${azSsoUrl}]]是执行此操作的正确方法。我在这里做错了什么?任何帮助表示赞赏。

编辑:

我尝试了可能重复问题的答案中提到的各种方法。但是似乎没有什么可以解决我的问题。

1 个答案:

答案 0 :(得分:0)

这就是我最终解决问题的方式。似乎th:inline="javascript"是script标记所必需的。

<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <script th:inline="javascript">
       function postForm() {

          /*<![CDATA[*/

          window.location.href = /*[[${azSsoUrl}]]*/ 'redirect url';

          /*]]>*/
       }
    </script>
    <title></title>
</head>
<body onload="postForm()">
</body>
</html>