它通常是由Spring默认的CSRF保护引起的。
例如,如果你使用JS代码中的DELETE HTTP请求,则还需要发送CSRF保护标头。
无需禁用CSRF保护!请不要这样做,如果没有必要。
你可以通过以下方式轻松添加CSRF AJAX / REST保护:
1.向每个页面添加元头(使用@ layout.html等):
<head> <meta name="_csrf" th:content="${_csrf.token}"/> <meta name="_csrf_header" th:content="${_csrf.headerName}"/></head>
2.自定义你的ajax请求以为每个请求发送这些标头:
$(function () { var token = $("meta[name='_csrf']").attr("content"); var header = $("meta[name='_csrf_header']").attr("content"); $(document).ajaxSend(function(e, xhr, options) { xhr.setRequestHeader(header, token); });});
请注意,我使用百里香叶,所以我使用th:content而不是content属性。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)