[英]Refuse to execute Script when Including JS-Libraries in Thymeleaf Template
我想在 Thymeleaf 页面中使用 JQuery 和 JSEncrypt。 通过研究,我发现我可以通过包含保存在 Spring Boot 应用程序的 /static/js/ 文件夹中的库的 .js 文件来实现这一点。
我收到以下错误:
文件夹树:
我的 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.