MultipartHttpServletRequest 파일 업로드 관련 질문드립니다.
- 작성자 :
- 김*욱
- 작성일 :
- 2020-08-25 18:11:01
- 조회수 :
- 3,349
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
안녕하세요.
다름이 아니라 개발 도중 어떠한 상황인지 이해가 잘 안되서 질문드립니다..
ajax를 통하여 jsp단에서 첨부한 파일을 POST방식으로 서버쪽으로 넘겨주는 작업을 진행하고 있었는데 ajax에서 컨트롤러단으로 넘기는 요청 url이 정상적임에도 불구하고 컨트롤러단에서 매핑 되어있는 컨트롤러가 제대로 작동되지 않습니다 또한 디버그도 진행해 보았으나 디버그가 제대로 작동하지 않는것을 확인해보면 해당 리퀘스트 매핑에 문제가 있는것 같습니다.
만약 컨트롤러에 오류가 있다면 이클립스 콘솔상에 에러 로그가 찍혀야 하는데 에러 로그도 찍히지 않고 그냥 ajax 석세스 로그에 따로 설정해놓은 401 페이지 url만 리턴이 되네요..
소스코드는 첨부파일에 첨부하였으며 XSS필터는 springSecurityFilterChain를 타기전MultipartFilter를 거치게 작성해두었으며,
pom에는 dependency가 추가되어있고 servlet에는 bean multipartResolver가 제대로 선언되어있습니다..
ajax요청 url이 /admin/으로 시작하는 이유는 컨트롤러의 리퀘스트 매핑이 @RequestMapping("/admin")으로 잡혀있습니다.
컴파일시에 문제는 없으며 이클립스 콘솔은 아무 오류도 출력하지 않아 문의드립니다..
다름이 아니라 개발 도중 어떠한 상황인지 이해가 잘 안되서 질문드립니다..
ajax를 통하여 jsp단에서 첨부한 파일을 POST방식으로 서버쪽으로 넘겨주는 작업을 진행하고 있었는데 ajax에서 컨트롤러단으로 넘기는 요청 url이 정상적임에도 불구하고 컨트롤러단에서 매핑 되어있는 컨트롤러가 제대로 작동되지 않습니다 또한 디버그도 진행해 보았으나 디버그가 제대로 작동하지 않는것을 확인해보면 해당 리퀘스트 매핑에 문제가 있는것 같습니다.
만약 컨트롤러에 오류가 있다면 이클립스 콘솔상에 에러 로그가 찍혀야 하는데 에러 로그도 찍히지 않고 그냥 ajax 석세스 로그에 따로 설정해놓은 401 페이지 url만 리턴이 되네요..
소스코드는 첨부파일에 첨부하였으며 XSS필터는 springSecurityFilterChain를 타기전MultipartFilter를 거치게 작성해두었으며,
pom에는 dependency가 추가되어있고 servlet에는 bean multipartResolver가 제대로 선언되어있습니다..
ajax요청 url이 /admin/으로 시작하는 이유는 컨트롤러의 리퀘스트 매핑이 @RequestMapping("/admin")으로 잡혀있습니다.
컴파일시에 문제는 없으며 이클립스 콘솔은 아무 오류도 출력하지 않아 문의드립니다..
A
안녕하세요.
표준프레임워크 센터입니다.
현재 질문자님께서 제공해 주신 정보에서 정확한 원인을 파악하기는 힘들지만
인증 과정을 확인해 보시는게 좋을것 같습니다.
결국 해당 response가 401 인증오류로 연결되었기 때문에 해당 메소드를 타지 않은것으로 보입니다.
xss 필터와 springSecurity를 선후관계로 두었다고 하나 결국 인증을 거치게 됨으로 인증이 이루어진 상태여야만 합니다.
security를 해제하고 다시한번 저 주소를 호출해 보시기 바랍니다.
"XSS필터는 springSecurityFilterChain를 타기전MultipartFilter를 거치게 작성해두었으며" 라는것이
혹시 xss 필터를 MultipartFilter만 쓰고 xss 필터는 쓰지 않으셨다는 내용이라면 MultipartFilter 이후 xssFilter 또한 필요하니 xss 삭제가 안되어 있어야 합니다.
감사합니다.
표준프레임워크 센터입니다.
현재 질문자님께서 제공해 주신 정보에서 정확한 원인을 파악하기는 힘들지만
인증 과정을 확인해 보시는게 좋을것 같습니다.
결국 해당 response가 401 인증오류로 연결되었기 때문에 해당 메소드를 타지 않은것으로 보입니다.
xss 필터와 springSecurity를 선후관계로 두었다고 하나 결국 인증을 거치게 됨으로 인증이 이루어진 상태여야만 합니다.
security를 해제하고 다시한번 저 주소를 호출해 보시기 바랍니다.
"XSS필터는 springSecurityFilterChain를 타기전MultipartFilter를 거치게 작성해두었으며" 라는것이
혹시 xss 필터를 MultipartFilter만 쓰고 xss 필터는 쓰지 않으셨다는 내용이라면 MultipartFilter 이후 xssFilter 또한 필요하니 xss 삭제가 안되어 있어야 합니다.
감사합니다.