Request 개체 QueryString 컬렉션 – Classic ASP 내장 개체 (1)

Request 개체는 Classic ASP에서 클라이언트의 여러 가지 정보를 담고 있는 내장 개체입니다. 그 중 QueryString 컬렉션은 Get 방식으로 전송된 요소들의 값을 담고 있습니다. QueryString 컬렉션을 통해 URL 주소 뒤에 붙여 전송된 데이터를 가져올 수 있습니다. 이를 활용하여 클라이언트가 전송한 데이터를 처리하고 출력할 수 있습니다. Classic ASP에서는 Post 방식을 보다 선호하지만, Get 방식은 URL 주소로 데이터를 전달하기 때문에 데이터양 제한과 보안 취약성 등의 문제점이 있습니다.


1. Request 개체 기능

컬렉션, 프로퍼티, 메서드설명
컬렉션QueryString브라우저로 부터 전송된 요소들의 값 (Get 방식)
Form브라우저로 부터 전송된 폼의 요소들의 값 (Post 방식)
ServerVariables서버의 환경 변수 값
Cokies브라우저로 부터 전송된 쿠키 값
ClinetCertificate브라우저로 부터 전송된 클라이언트 인증서에 저장된 값
프로퍼티TotalBytes클라이언트가 보내는 바이트 수
메서드BynaryReadPost 요청의 일부분으로 서버에 보내지는 데이터를 불러내는데 사용


2. QueryString 컬렉션 (Get 방식)

사용 예제입니다.

<form name="form1" action="02_01_Request_result.asp" method="get">
   이 름 : <input type="text" name="txtName"></br>
   주 소 : <input type="text" name="txtAddr"></br>
   Email : <input type="text" name="txtEmail"></br></br>

   <input type="submit" value="전 송"></br>
</form>
02_01_Request.asp 예제 화면입니다.
<!-- 02_01_Request_result.asp -->
<%
Response.Write "브라우저로 부터 전송된 요소들의 값 (Get 방식)" & "</br></br>"

Response.Write "이 름 : " & Request.QueryString("txtName") & "</br>"
Response.Write "주 소 : " & Request.QueryString("txtAddr") & "</br>"
Response.Write "Email : " & Request.QueryString("txtEmail") & "</br>"

Response.Write "</br>QueryString 생략 가능합니다." & "</br></br>"

Response.Write "이 름 : " & Request("txtName") & "</br>"
Response.Write "주 소 : " & Request("txtAddr") & "</br>"
Response.Write "Email : " & Request("txtEmail") & "</br>"
%>
02_01_Request_result.asp 결과 화면입니다.


Get 방식은 URL 주소 뒤에 정보를 붙여 전송하는 방식입니다. 경험상 크게 2가지 문제점이 있어 부득이 한 경우가 아니라면 Post 방식으로 정보를 전송하세요.

  • 문제점 1) URL 주소로 전달되는 데이터양이 제한되어 있습니다. (예: 블로그 본문 처럼 데이터 양이 많은 경우는 제한으로 오류가 발생합니다.)
  • 문제점 2) 보안상 많이 취약합니다. 물론 암호화 처리해서 넘겨줘도 되지만 URL 조작이 싶습니다.


다음에는 Post 컬렉션 에 대해서 알아봅시다. 이 글이 도움이 되셨다면 공유를 부탁드립니다. 다음 글에서 뵙겠습니다!

위로 스크롤