繁体   English   中英

在 Thymeleaf 模板中包含 JS 库时拒绝执行脚本

[英]Refuse to execute Script when Including JS-Libraries in Thymeleaf Template

我想在 Thymeleaf 页面中使用 JQuery 和 JSEncrypt。 通过研究,我发现我可以通过包含保存在 Spring Boot 应用程序的 /static/js/ 文件夹中的库的 .js 文件来实现这一点。

我收到以下错误:

在此处输入图片说明

文件夹树:

Spring应用的目录树

我的 HTML 如下所示:

<html ..>
..
..   
<link href="../static/css/layout.css" th:href="@{css/layout.css}" rel="stylesheet" type="text/css"/>
<script type="text/javascript" th:src="@{js/jquery-3.5.1.min.js}"></script>
<script type="text/javascript" th:src="@{js/jsencrypt.min.js}"></script>
<script type="text/javascript">
    function encryptPw() {
        var encPw = $('#password').val();
        console.log(encPw);
    }
</script>
</head>

<body>
<form ...>
...
...
 <p>
     <label for="password" class="login-hidden-label">Passwort</label>
     <input type="password" id="password" name="password" class="login-input-field" placeholder="Passwort" required>
 </p>
    <button class="login-accept-button" onclick="encryptPassword()" type="submit">Anmelden</button>
</body>
</html>

通过允许 spring 网络安全中的所有请求来解决这个问题

/js/**

在我的 antMatchers 中。

httpSecurity.antMatchers("/js/**").permitAll();

修复它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM