CODEDRAGON ㆍDevelopment/JSP
GET 전송 방식
· 주소에 데이터(data)를 추가하여 전달하는 방식입니다.
· Get방식은 URL에 데이터정보를 넣어서 전송하는 방식이여서 웹 브라우저 주소창에 정보가 그대로 보이므로 보안상 취약합니다.
· GET 방식의 HTTP 요청은 브라우저에 의해 캐시되어(cached) 저장됩니다. 크기 또한 1024byte로 제한되어 있습니다.
· GET 방식은 보통 쿼리 문자열(query string)에 포함되어 전송되므로, 길이의 제한이 있습니다.
get 방식으로 이용한 파라미터 전송시, 요청 데이터
http://localhost:8080/c01ServletMain/add?num1=10&num2=20 <크롬 요소 검사를 이용한 header 정보 보기>
GET /ServletMain/add?num1=10&num2=20 HTTP/1.1 Host: localhost:8080 Connection: keep-alive Cache-Control: max-age=0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36 Referer: http://localhost:8080/c01ServletMain/views/add.html Accept-Encoding: gzip, deflate, sdch Accept-Language: ko-KR,ko;q=0.8,en-US;q=0.6,en;q=0.4 |
파라미터 값에 한글이 포함되어 있을 때 아래와 같이 인코딩되어 서버에 전송
name=%ED%99%8D%EA%B8%B8%EB%8F%99
[톰캣에서 GET방식 파라미터 값을 위한 인코딩 처리]
톰캣설치디렉터리/conf/server.xml 에서 아래 코드 수정
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding=”euc-kr”/>
URIEncoding=”euc-kr”로 지정하면 GET 방식으로 전송된 파라미터를 읽을 때 항상 URIEncoding 속성에 지정한 캐릭터 셋을 지정합니다. ---------------------------------------------------------------------- <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI=”true”/>
useBodyEncodingForURI=”true”로 지정하면 GET 방식으로 전달된 파라미터값을 읽어올 때 request.setCharacterEncoding() 메서드로 지정한 캐릭터 셋이 적용됩니다. |
'Development > JSP' 카테고리의 다른 글
POST 전송 방식 (0) | 2019.02.12 |
---|---|
Servlet vs JSP (0) | 2019.02.11 |
Response객체 관련 메소드 (0) | 2019.01.28 |
Request객체 관련 메소드, Parameter 메소드 (0) | 2019.01.28 |
Ajax 활용 (0) | 2019.01.28 |