GET : 기본 파라미터 전송 방식
기본적으로 클라이언트가 서버에 접속하면 파라미터 전송 방식은 GET 방식이다.
주소줄에 파라미터를 실어서 보냄
Query String : GET 방식으로 전송되는 파라미터
<%-- 형식 : 주소?이름1=값&이름2=값2&이름3=값 --%>
주소? 다음에 이어지는 값들을 (이름1=값&이름2=값2&이름3=값) Query String이라고 한다.
<!-- 한글을 인코딩하지 않고 GET 방식으로 전송 : IE는 에러가 발생 -->
<a href="ex01_ok.jsp?name=이자바&age=20">확인</a>
<!-- 자바를 이용하여 한글 인코딩 -->
<a href="ex01_ok.jsp?name=<%= URLEncoder.encode("홍길동", "UTF-8") %>&age=20">확인</a>
<!-- 자바 스크립트를 이용하여 GET 방식으로 파라미터 전송 -->
<p>
<button type="button" onclick="send()">확인</button>
</p>
<script type="text/javascript">
function send() {
let name = "김&바";
let age = 17;
// name을 인코딩하지 않고 서버로 전송하면 크롬은 "김"만 전달되므로 반드시 인코딩이 필요
name = encodeURIComponent(name); // 주소형식으로 인코딩
// 이동할 페이지 주소
location.href= "ex01_ok.jsp?name="+name+"&age="+age;
}
</script>
// 클라이언트가 보낸 요청 파라미터 받기
// request : 요청 정보를 가지고 있는 JSP 내장객체
String name = request.getParameter("name");
// 클라이언트측에서 보낸 파라미터("name")가 존재하지 않을 경우 null이 된다.
// GET 방식으로 넘어온 인코딩된 파라미터를 디코딩하지 않으면 WAS에 따라 한글이 깨질 수 있다.
name = URLDecoder.decode(name, "utf-8");
'Frontend > JSP' 카테고리의 다른 글
JSP - 파라미터 전송 방식(POST) (0) | 2022.09.29 |
---|