'Request'에 해당되는 글 1건

  1. 2014.05.25 Request 객체 와 Response 객체

1. Request 객체
클라이언트에서 어떤 페이지를 요청하면 서버로 요청 정보를 전송하는데, 이렇게 전송된 데이터가 저장되는 곳이 바로 Request 객체이다. 사용자가 브라우저를 통해 서버에게 어떤 요구를 하면 Request 객체는 이때 사용자의 브라우저 정보나 입력한 값 등의 정보를 갖게 된다.

사용형식>
Request.[컬렉션 | 속성 | 메소드]("변수")

예) Request.QueryString("strID")
     Request.Cookies("Login")
     Request.ServerVariables("SERVER_NAME")

(1) ClientCertificate 컬렉션 - 클라이언트가 전송한 인증서

사용자의 인증을 위한 디지털 인증정보의 내용을 조사한다. 그다지 많이 쓰이지 않는 컬렉션이다.

형식> Request.ClientCertificate (키)
예>    Request.ClientCertificate (member)

(2) Cookies 컬렉션 - 클라이언트가 전송한 쿠키값
쿠키는 사용자의 시스템에 간단한 정보를 저장하여 필요할 때마다 해당 정보를 읽어오려고 한다.
(쿠키를 사용하는 주된 원인은 간단한 정보를 클라이언트에 저장함으로써 서버의 부하를 크게 줄일 수 있다.)

형식> Request.Cookies (쿠키변수) [(하위쿠키 변수) | .속성 ]
예> Request.Cookies (strLog)
      Request.Cookies (strLog) (strSubLog)

(3) From 컬렉션 - 클라이언트가 전송한 폼 요소
서버로 데이터를 전달하는 방법은 get, post 두 가지 방식이 있다. get 방식은 QueryString 컬렉션이 해당 데이터를 받고 post 방식은 Form 컬렉션이 해당 데이터를 받는다.

전달할 데이터를 입력하려고 <Form> 태그를 다음과 같이 사용한다.
<Form Method = "post" Action = "웹페이지" >
태그를 해석하면 사용자가 서버로 전달하고자 입력한 데이터를 post 방식으로 전송하고 지정한 웹페이지에서 데이터를 처리한다는 것을 뜻한다. 처리된 데이터는 Form 컬렉션에 저장되는데 이러한 값을 읽으려면 Form 컬렉션을 사용해야 한다.

형식> Request.Form (변수)
예>    Request.Form ("strID")
         Request.Form ("strPWD")

<Form>태그는 사용자가 입력한 값을 전달하는 역할을 한다.

형식> <Form Method="전송방식" Action="값을 전달 받을 URL" Enctype = "인코딩할 폼 데이터의 타입 지정" Target = "출력될 창의 이름" >

<INPUT>태그는 입력받을 곳을 생성한다.

형식><INPUT Type = "입력형태" name = "이름" Value = "값">


(4) QueryString 컬렉션 - HTTP 질의 문자열에 있는 변수 값
Form 컬렉션이 post 방식으로 전송된 데이터를 저장하는 것이라면 QueryString 컬렉션은 get 방식으로 전송한 데이터를 저장하는 역할을 한다. 그러므로 Form 컬렉션과 QueryString 컬렉션의 사용법은 비슷하다.

형식>Request.QueryString (변수)
예>   Request.QueryString("strID")
        Request.QueryString("strPWD")

입력폼 만들기
형식><Form Method = "get" Action = "웹페이지">

<INPUT>태그는 post 방식과 동일


(5) ServerVariables 컬렉션 - HTTP와 환경 변수 값
ServerVariables 컬렉션에 기본적인 사용자가 서버로 전송한 정보들이 저장되어 있다.
형식> Request.ServerVariables (서버환경변수)
예>    Request.ServerVariables (strKey)
         Request.ServerVariables ("HTTP_USER_AGENT")

(6) TotalByte 속성 - 클라이언트가 전송한 총 바이트 수
사용형식> Request.TotalBytes


2. Response 객체
사용자가 어떤 요청을 하였을 때 서버가 이에 응답을 보내려고 Response 객체를 사용한다.

형식>Response.[컬렉션 | 속성 | 메소드]
예>   Response.Redirect "From.htm"
        Response.Cookies ("MemberInfo")
        Response.Write "HELLOASP"

(1) Cookies 컬렉션 - 보내지는 쿠기값
Response 객체에서는 Cookies 컬렉션을 사용하여 해당 값을 기억하려고 사용한다.

형식>Resposne.Cookies(쿠키 변수)[(하위 쿠키 변수) | .속성] = 쿠키 값
예>   Response.Cookies("MemberInfo")("strName") = "홍길동"
        Response.Cookies("MemberInfo").Expires = "May 5, 2006"

(2) Buffer 속성 - ASP의 결과가 완성될 때까지 캐시 할 것인지를 지정
Buffer 속성은 버퍼에 저장할 것인지 안 할 것 인지를 지정하는 속성
Buffer의 값을 'TRUE'로 값을 지정할 때에는 사용자가 요청한 결과를 처리할 때 해당 페이지가 완성될 때까지 또는 Flush나 End 메소드가 호출될 때 까지 해당 결과를 전송하지 않는다. 'FALSE'로 값을 지정할 때에는 결과 페이지를 저장하지 않고 즉시 클라이언트로 전송한다.

(3) CacheControl 속성 - Content Type 헤더에 문자 집합 이름 추가
서버와 사용자 사이에는 페이지 응답 시간을 단축시키려고 해당 웹 페이지를 캐시ㅣ하도록 구성되는 프록시 서버가 있다. 이러한 프록시 서버가 ASP의 결과를 캐시할 것인지에 대한 지정하는 속성이다.

형식>Response.CacheControl [=Cache Control Header]

(4) ContentType 속성 - HTTP 컨텐츠 형식 지정
서버가 사용자에게 파일을 보낼때에 해당 파일의 타입을 지정한다. 이렇게 콘텐츠 형식을 지정함으로써 사용자의 브라우저에 자체적으로 출력할 것인지 아니면 다른 응용 프로그램을 호출할 것인지를 결정하게 된다.
기본 값은 'text/html' 이다.

형식>Response.ContentType [=콘텐츠 형식]
예>   Response.ContentType = "image/GIF"
        Response.ContentType = "image/JPEG"

(5) Expires 속성 - 캐시된 페이지의 만료기간 지정
브라우저에 캐시된 페이지의 만료 기간을 지정하는 역할을 한다. 페이지가 만료되기 전에 같은 페이지가 호출되면 캐시된 페이지가 출력된다.

형식>Response.Expires = "May 5, 2006"
예>   Response.Expires = 0

일반적으로 Expires의 값에는 날짜를 적어주지만 0이나 -1 등을 사용해서도 값을 지정할 수 있다. 만약에 해당 값을 0으로 지정하면 브라우저에서 ASP 페이지가 캐싱하지 못하게 되며 -1 등의 음수로 값을 지정했을 때에는 응답이 즉시 만료가 된다.

(6) ExpiresAbsolute 속성 - 캐시된 페이지의 만료 날짜와 시간 지정
브라우저에 캐시된 페이지의 만료 기간을 지정하는 역할을 한다. 하지만 차이점이 있다면 Expiresabsolute 속성은 날짜 이외에 시간까지 지정할 수 있다.

형식>Response.ExpiresAbsolute [= [날짜] [시간] ]
예>   Response.ExpiresAbsolute =#May 5, 2006 12:30:30#

날짜형식은 #과 # 사이에 값을 넣어 나타낸다.

(7) IsClientConnected 속성
클라이언트와 서버가 연결되었는지 아니면 끊었는지를 알려주는 속성이다.

형식>Response.IsClientConnected()

(8) Redirect 메소드
사용자가 서버에 웹 페이지를 요청하면 일반적으로 해당 웹 페이지를 전송한다. 하지만 Redirect 메소드를 사용하면 웹페이지 대신 지정한 URL로 이동시킬 수 있다.

형식>Response.Redirect URL
예>   Response.Redirect "Login.htm"
        Response.Redirect "Form.htm"


저작자 표시
신고

'프로그래밍 > Serblet' 카테고리의 다른 글

Request 객체 와 Response 객체  (0) 2014.05.25
Posted by 앗뜨거워 ( @bok3937 ) 앗뜨거


티스토리 툴바