프로퍼티 & 메소드 [출처] 프로퍼티 & 메소드|작성자 항해자  


Application 객체

웹 어플리케이션에 접속한 모든 사용자에게 정보를 공유하기 위해 사용한다. 

메소드 설명
Lock 다른 사용자로부터 Application 객체의 속성을 변경하는 것을 막는다.
Unlock 다른 사용자가 Application 객체의 속성을 변경하는 것을 허가한다.

이벤트 설명
Application_OnStart 웹 어플리케이션에 최초의 사용자가 접근할 때 실행된다.
Application_OnEnd 웹 어플리케이션이 종료될 때 실행된다.

두 이벤트는 Global.asa에서 정의되어야 한다.

 Session 객체

특정 사용자 세션에서만 공유되는 정보를 저장하기 위해 사용한다.
각 사용자들은 웹 어플리케이션의 모든 페이지에서 자신만의 정보를 공유할 수 있다. 

프로퍼티 설명
SessionID 사용자의 Session ID를 리턴한다.
Timeout 이 어플리케이션의 세션 상태에 대한 Timeout 주기를 분으로 표시한다.

메소드 설명
Abandon 세션 객체를 제거하고 그 자원들을 모두 시스템에 돌려준다.

이벤트 설명
Session_OnStart 어떤 사용자가 처음으로 웹 어플리케이션에 접속할 때 실행된다.
Session_OnEnd Abandon이 호출되거나 Timeout 시간동안 사용자의 접근이 없을 때 실행된다.

두 이벤트는 Global.asa에서 정의되어야 한다.

 Request 객체

Request 객체는 HTTP 요구 과정에서 클라이언트 브라우져로 부터 서버로 전달되는 값들을 가져온다.
Request 객체는 다음과 같은 컬렉션들을 포함한다. 컬렉션이란 한 객체의 하위 객체라고 보면 된다. 

ClientCertificate 클라이언트의 보안 인증을 위해서 필요한 필드 값들을 전달한다.
Cookies 클라이언트의 쿠키 값을 얻어온다.
쿠키란 클라이언트의 하드디스크에 저장할 수 있는 개인 정보이다.
예를 들자면 어떤 사용자가 이전에 웹 어플리케이션을 방문했을 때의 자취를 이 쿠키에 담을 수도 있고, 인터넷 쇼핑몰 안에서 쇼핑한 결과를 담아서 요금 지불을 할 때에 필요한 물품들의 목록 및 가격등을 담을 수도 있다.
Form 폼 값을 전달한다.
QueryString HTTP 쿼리 문자열 안의 변수 값들을 전달한다.
ServerVariables 미리 결정된 환경 변수의 값들을 전달한다.

ClientCertificate 컬렉션

사용자가 SSL3.0/PCT1 프로토콜을 사용하여 서버에 연결할 때(다시말해서, URL의 시작부분에 "http://"대신에 "https://"를 사용할 때), 서버는 인증 요구를 하게된다.
그때 클라이언트 브라우져는 X.509 표준에서 지정한 인증 필드들을 서버로 보내게 되는데, 이 ClientCertificate 컬렉션이 이 값들을 받아오는 역할을 한다. 


문법 Request.ClientCertificate(Key[SubKey])

Key 전달할 인증 필드의 이름이며 아래의 값들중 하나를 사용할 수 있다.

Subject 인증 서브젝트 정보의 서브 필드 목록을 문자열 형태로 리턴한다.
만약 SubKey가 지정되지 않았을 경우, ClientCertificate는 모든 서브 필드 목록을 컴마(,)로 구분하여 리턴한다. 예를 들면, "C=US, O=Msft, ...".
Issuer 인증 발행인 정보의 서브 필드 목록을 문자열 형태로 리턴한다.
만약 SubKey가 지정되지 않았을 경우, ClientCertificate는 모든 서브 필드 목록을 컴마(,)로 구분하여 리턴한다.
예를 들면, "C=US, O=Verisign, ...".
ValidFrom 인증 개시 날짜를 리턴한다.
ValidUntil 인증 만료 일자를 리턴한다.
SerialNumber 인증 일련 번호를 리턴한다.
Certificate ASN.1 형식으로 모든 인증 내용을 담은 바이너리 스트림을 리턴한다.
Flags 클라이언트의 추가적인 인증 정보를 제공하는 플래그 집합이며, 아래와 같은 값들이 지정될 수 있다.
ceCertPresent - 클라이언트 인증이 존재한다.
ceUnrecognizedIssuer - 이 체인안의 가장 최근 인증은 알 수 없는 인증발행인으로 부터 발행되었다.

참고 : 위의 플래그(Flags)를 사용하려면 ASP 파일 안에 다음과 같은 파일을 포함해야 한다.
VBScript를 사용하는 경우, ASP 파일 안에 Cervbs.ins 파일을 포함시켜야 한다.
<!--#INCLUDE FILE="virtual-path\Cervbs.ins"-->
JScript를 사용하는 경우, Cerjavas.ins 파일을 같은 형식으로 포함시켜야 한다.
<!--#INCLUDE FILE="virtual-path\Cervbs.ins"-->

위 파일들은 \Inetpub\ASPSamp\Samples에 설치되어 있다.

SubField Subject나 Issuer 같은 키에 대한 정보를 얻어오는 데에 사용하는 생략가능한 파라메터이다.
이 파라메터는 해당 키의 접미어로 추가된다.
예를 들면, "IssuerO" 또는 "SubjectCN"와 같은 형식으로 사용할 수 있다.
아래에 일반적인 SubField 값들을 나열했다.

설명
C 국가 이름의 약칭을 나타낸다.
O 회사또는 조직의 이름을 나타낸다.
OU 조직 단위의 이름을 나타낸다.
CN 사용자의 일반적인 이름을 나타낸다. (이 서브필드는 Subject키와 같이 사용된다.)
L 위치를 나타낸다.
S 국가나 주를 나타낸다.
T 개인이나 조직의 이름을 나타낸다.
GN 주어진 이름을 나타낸다.
I 초기 집합을 나타낸다.

Cookies 컬렉션 

문법 Request.Cookies(cookie)[(key)|attribute]

Key 전달할 인증 필드의 이름이며 아래의 값들중 하나를 사용할 수 있다.

파라메터 설명
cookie 전달받을 쿠키 값을 나타낸다.
key 생략 가능. 전달받을 쿠키 사전의 서브키를 나타낸다.
attribute 쿠키 자신에 대한 정보를 나타낸다.
다음과 같은 값들이 올 수 있다.
HasKeys    읽기 전용. 서브키들을 포함하는 쿠키인지를 나타낸다.

Form 컬렉션

POST 메소드를 사용하는 폼들의 값을 받아오는 컬렉션이다. 


문법 Request.Form(parameter)[(index)|.Count]

Key 전달할 인증 필드의 이름이며 아래의 값들중 하나를 사용할 수 있다.

파라메터 설명
parameter 폼문 안에 있는 구성요소의 이름을 나타낸다.
index parameter에 여러 개의 값이 포함되어 있을 경우, 각 요소에 접근할 때 사용하며, index 는 1에서 Request.Form(parameter).Count사이의 정수 값이 될 수 있다.
Count parameter에 여러 개의 값이 포함되어 있을 경우, 각 요소들의 총 갯수를 돌려준다.

QueryString 컬렉션

HTTP 쿼리 스트링에 포함된 변수의 값을 얻어올 때 사용하는 컬렉션이다.
쿼리 스트링은 HTTP 요구에서 물음표(?) 문자에 의해서 구분되며, 쿼리 스트링 내의 변수들은 엠퍼센드(&)에 의해서 구분된다. 


문법 Request.QueryString(variable)[(index)|.Count]

Key 전달할 인증 필드의 이름이며 아래의 값들중 하나를 사용할 수 있다.

파라메터 설명
variable HTTP 쿼리 스트링 안에 포함된 변수의 이름을 나타낸다.
index variable에 여러 개의 값이 포함되어 있을 경우, 각 요소에 접근할 때 사용한다.
index는 1에서 Request.QueryString(variable).Count 사이의 정수 값이 될 수 있다.
Count parameter에 여러 개의 값이 포함되어 있을 경우, 각 요소들의 총 갯수를 돌려준다.

ServerVariable 컬렉션 

문법 Request.ServerVariable(variable)

Key 전달할 인증 필드의 이름이며 아래의 값들중 하나를 사용할 수 있다.

파라메터 설명
variable 가져올 서버의 환경 변수 이름을 나타낸다.
아래에 ServerVariable의 이름과 그 의미를 나열해 보았다.

환경 변수 설명
AUTH_TYPE 보호된 스크립트에 접근하려고 할 때, 사용자를 확인하기 위해서 사용하는 서버의 인증 메소드
CONTENT_LENGTH 클라이언트로 부터 주어진 컨텐트의 길이
CONTENT_TYPE 컨텐트의 데이타 타입. HTTP 의 POST와 PUT 쿼리처럼 첨가된 정보를 가진 쿼리와 같이 사용한다.
GATEWAY_INTERFACE 서버에서 사용하는 CGI 스펙의 버젼
HTTP_<HeaderName> HTTP 헤더인 HeaderName 안에 있는 값
LOGON_USER 윈도우 NT에 로그온 하는 사용자의 계정
PATH_INFO 현재 스크립트의 가상 경로를 리턴한다.
PATH_TRANSLATED PATH_INFO의 절대 경로를 리턴한다.
QUERY_STRING HTTP 요구에서 ? 문자 다음에 나오는 쿼리 정보
REMOTE_ADDR 클라이언트 호스트의 IP주소를 리턴한다.
REMOTE_HOST 클라이언트 호스트의 이름을 리턴한다.
REQUEST_METHOD HTTP 요구의 메소드 유형을 리턴한다. 예를 들면, GET, POST, HEAD등
SCRIPT_MAP URL의 기본 위치를 준다.
SCRIPT_NAME 실행중인 스크립트의 가상 경로이름을 리턴한다.
SERVER_NAME 서버의 IP또는 도메인 이름을 리턴한다.
SERVER_PORT 서버의 포트 번호를 리턴한다.
SERVER_PORT_SECURE 서버의 포트가 보안중이면 1, 아니면 0을 리턴한다.
SERVER_PROTOCOL 프로토콜의 이름과 버젼 번호를 리턴한다.
SERVER_SOFTWARE 웹서버의 이름과 버젼 번호를 리턴한다.
URL 스크립트 파일의 URL을 리턴한다.

 Response 객체

Response 객체는 서버에서 클라이언트로 정보를 보내는 역할을 한다. 

컬렉션 설명
Cookies 쿠키 값을 지정한다. 이 컬렉션을 이용해서 쿠키값을 설정할 수 있다.

myCookies에 "안녕하세요"라는 값을 넣는 예제입니다.
<% Response.Cookies("myCookies") = "안녕하세요"%>

프로퍼티 설명
Buffer HTTP 출력이 버퍼인지 클라이언트 브라우져인지를 지정한다.
만약 Buffer의 값이 True이면 페이지 출력을 Buffer로 한다.
서버는 현재 페이지의 모든 ASP 스크립트가 처리되기 전까지 또는 Flush나 End메소드가 호출될 때까지 페이지를 클라이언트로 보내지 않는다.
ContentType HTTP 컨텐트 타입을 지정한다.
예를 들면 컨텐트가 "text/HTML"인지 "image/GIF"인지를 지정할 경우에 사용한다.
컨텐트 타입이 지정되지 않은면 컨텐트는 "text/HTML"로 인식된다.
Expires 페이지의 유효 기간을 분단위로 지정한다.
만약 사용자가 페이지의 유효 기간이전에 해당 웹페이지에 접근할 경우 브라우져는 캐쉬에서 페이지를 로드한다.
ExpiresAbsolute 캐쉬된 페이지의 유효 기간을 날짜와 시간으로 지정한다.
Status 서버에서 클라이언트로 HTTP 상태값을 전달한다.
상태값은 HTTP 사양에 정의되어 있다.

메소드 설명
AddHeader HTTP 헤더에 새로운 헤더 이름과 값을 추가한다.
이 헤더는 Request.ServerVariable()컬랙션을 사용해서 얻어올 수 있다.
AppendToLog 웹 서버의 로그 엔트리의 마지막에 문자열을 추가한다.
BinaryWrite 아무런 문자셋 변경도 없이 주어진 정보를 HTTP 출력으로 보낸다.
Clear 버퍼에 있는 모든 HTML 출력 내용을 지운다.
End .asp의 처리를 종료하고 현재 결과를 리턴한다.
Flush 버퍼에 있는 내용을 즉시 보낸다.
Redirect 다른 Url로 페이지를 이동한다.
Write 현재 HTTP 출력에 문자열을 쓴다.

 Server 객체

Server 객체를 사용해서 서버상에 존재하는 메소드와 프로퍼티들을 사용할 수 있다.
대부분의 메소드와 프로퍼티들은 유틸리티 기능을 제공된다. 

프로퍼티 설명
ScriptTimeout 스크립트의 최대 실행 시간을 초단위로 지정한다. 기본값은 90이다.

메소드 설명
CreateObject 서버 컴포넌트의 인스턴스를 생성한다.
HTMLEncode HTML을 엔코딩한다.
예를 들면, <%= Server.HTMLEncode("The paragraph tag: <P>") %>는 The paragraph tag: &lt;P&gt;와 같이 출력된다.
MapPath 웹 서버상의 가상 경로를 실제 물리적 경로로 변경한다.
URLEncode URL 엔코딩 법칙에 따라 지정된 스트링을 엔코딩한다.
예를 들면, <%= Server.URLEncode("The paragraph tag: <P>") %>는 The+paragraph+tag%3A+%3CP%3E와 같이 출력된다.

[출처] 프로퍼티 & 메소드|작성자 항해자

'asp' 카테고리의 다른 글

ASP에서 오라클 DB를 이용하는 방법  (0) 2010.09.28
트랜잭션  (0) 2010.09.28
DextUpLoad 를 이용한 WaterMark와 Thumbnail  (0) 2010.09.28
Form 변수 일괄처리 하기  (0) 2010.09.28
원격 서버의 SMTP 사용하기  (0) 2010.09.28

+ Recent posts