security 사용시 ajax 전송에 헤더 세팅 필요
//서버에서 발행된 헤더네임과 토큰갑사 저장
const header = '${_csrf.headerName}';
const token = '${_csrf.token}';
//바닐라 자바스크립트 사용시 AJAX send 전에 헤더값 세팅 필요
xhr.setRequestHeader(header, token);
//jQuery Ajax 사용시 beforeSend 추가
dataType:"json",
beforeSend: function(xhr) {
xhr.setRequestHeader(header, token);
},
success:function(data){}
multipart 전송에 token값이 전송 안 될 수가 있음.
web.xml에 springMultipartFilter 등록
<!-- 요걸 앞에 ...-->
<filter>
<filter-name>springMultipartFilter</filter-name>
<filter-class>org.springframework.web.multipart.support.MultipartFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>springMultipartFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 요건 기존 Security를 위한 필터 ...-->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
CKEditor 설정
CKEDITOR.replace("nm_ta",{
enterMode : CKEDITOR.ENTER_BR,
filebrowserUploadMethod : "form", // 빠트려면 당황스런 상황
filebrowserImageUploadUrl : "<%=request.getContextPath()%>/ckUpload2?${_csrf.parameterName}=${_csrf.token}"
});
https://www.youtube.com/watch?v=tn47dIbqLWs
rest client (0) | 2022.05.31 |
---|---|
hidden method filter (0) | 2022.05.25 |
Validator (0) | 2022.05.23 |
이메일 (4) | 2022.05.13 |
Transaction (4) | 2022.05.12 |