✅ JSP에서 Request URI 얻기 (JSTL 방식)
Java 코드에서의 방식
request.getRequestURI();
JSTL에서의 기본 방식
${pageContext.request.requestURI}
- 이 값은 JSP 자체의 경로 (*.jsp) 를 반환합니다.
- 템플릿 엔진을 사용하거나 jsp:include, jsp:forward 등을 사용하면 실제 요청 경로와 다를 수 있습니다.
✅ 실제 클라이언트 요청 URI를 얻으려면?
JSTL에서 아래와 같이 사용하세요:
${requestScope['javax.servlet.forward.request_uri']}
- 이 값은 RequestDispatcher를 통해 포워딩된 경우에도 클라이언트의 실제 요청 URI를 반환합니다.
- 내부적으로 RequestDispatcher.forward()가 호출되면, WAS는 아래의 속성들을 requestScope에 저장합니다:
속성 키 | 의미 |
javax.servlet.forward.request_uri | 원래 요청된 URI |
javax.servlet.forward.context_path | 컨텍스트 경로 |
javax.servlet.forward.servlet_path | 서블릿 경로 |
javax.servlet.forward.path_info | 추가 경로 정보 |
javax.servlet.forward.query_string | 쿼리 스트링 |
✅ 요약
목적 | JSTL 표현식 |
현재 JSP 파일 경로 | ${pageContext.request.requestURI} |
클라이언트의 원래 요청 URI | ${requestScope['javax.servlet.forward.request_uri']} |
'Dev > frontend' 카테고리의 다른 글
JavaScript Standard Style (standardjs) (0) | 2023.04.06 |
---|---|
[javascript] fetch API (0) | 2023.04.05 |
JSP 기본 내용 정리 (0) | 2017.11.01 |
표준 태그 라이브러리 (JSTL) - 4. 함수 (0) | 2017.11.01 |
표준 태그 라이브러리 (JSTL) - 3. 국제화 태그 (0) | 2017.11.01 |