PathVariable으로 파라미터를 받을때 dot (.) 사용시 유의할것

반응형
728x90
반응형

상황

PathVariable으로 파라미터를 이메일형식 (ID@test.com) 으로 받을 경우 에러가 발생한다. controller에서 RequestMapping 또는 putMapping 등 url을 지정해줄때, 위 처럼 { }안의 파라미터를 사용할 수 있다. 이때 '.' 이 들어갈때 . 뒷부분이 짤려나가는 경우가 있다.

 

해결방안

@PutMapping("/register/{exam:.+}") public void exam(@PathVariable String exam) { }

 

예를들어 email이 exam@exam.com 이라고 하면, 위 url은 .../register/exam@exam 이 된다. 하지만 :.+ 을 써주면 모든 이메일이 파라미터로 들어오게 된다.

 

반응형

Designed by JB FACTORY