ASP 빠른 참조

CodeW3C.com에서의 ASP 빠른 참조. 필요할 때마다 사용할 수 있도록 가슴에 들고 가세요。

기본 문법

ASP 스크립트는 <%와 %>로 감싸져 있습니다. 이렇게 브라우저에 내용을 출력합니다:

<html>
<body>
<% response.write("Hello World!") %>
</body>
</html>

ASP에서의 기본 언어는 VBScript입니다. 다른 스크립트 언어를 사용하려면, ASP 페이지의 상단에 언어 선언을 삽입하세요:

<%@ language="javascript" %>
<html>
<body>
<%
....
%>

폼과 사용자 입력

Request.QueryString은 method="get"의 폼에서 값을 수집합니다. GET을 통해 폼을 통해 전송된 정보는 모든 사람에게可见(브라우저의 주소 표시줄에 표시됩니다),전송된 데이터량에도 제한이 있습니다。

Request.Form은 method="post"의 폼에서 값을 수집합니다. POST를 통해 폼을 통해 전송된 정보는 다른 사람에게是不可见,이전송된 데이터량에 제한이 없습니다。

ASP 쿠키

쿠키는 사용자를 인식하는 데 일반적으로 사용됩니다. 쿠키는 서버가 사용자 컴퓨터에 담아둔 작은 파일입니다. 같은 컴퓨터가 브라우저를 통해 해당 페이지를 요청할 때마다 쿠키가 전송됩니다.

Response.Cookies 명령어는 쿠키를 생성하는 데 사용됩니다:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("firstname").Expires="May 10,2012"
%>

주의: Response.Cookies 명령어는 <html> 태그 이전에 위치해야 합니다!

"Request.Cookies" 명령어는 쿠키 값을 가져오기 위해 사용됩니다:

<%
fname=Request.Cookies("firstname")
response.write("Firstname=" & fname)
%>

파일 참조

#include 지시문을 통해 서버가 실행하기 전에, 하나의 ASP 파일의 내용을 다른 ASP 파일에 삽입할 수 있습니다. #include 지시문은 함수, 페이지 헤더, 페이지 푸터, 또는 여러 페이지에서 반복적으로 사용할 요소를 생성하는 데 사용됩니다.

문법:

<!--#include virtual="somefile.inc"-->

또는

<!--#include file ="somefile.inc"-->

키워드 virtual을 사용하여 가상 디렉토리에서 시작하는 경로를 지시하세요. "header.inc" 파일이 /html 가상 디렉토리에 위치하면, 아래 코드는 "header.inc"의 내용을 삽입합니다:

<!-- #include virtual ="/html/header.inc" -->

키워드 file을 사용하여 상대 경로를 지시하세요。 상대 경로는 참조 파일이 포함된 디렉토리로 시작합니다. 파일이 html 디렉토리에 있고 "header.inc" 파일이 html\headers에 있을 경우, 아래 코드는 파일에 "header.inc"의 내용을 삽입합니다:

<!-- #include file ="headers\header.inc" -->

키워드 file와 문법 (..\)를 사용하여 더 높은 단계 디렉토리의 파일을 참조하세요。

Global.asa

Global.asa 파일은 선택 사항이며, ASP 애플리케이션의 각 페이지에서 접근할 수 있는 객체 선언, 변수 및 메서드를 포함할 수 있습니다.

주석:Global.asa 파일은 ASP 애플리케이션의 루트 디렉토리에 위치해야 하며, 각 애플리케이션은 하나의 Global.asa 파일만 가질 수 있습니다.

Global.asa 파일은 다음 내용만 포함할 수 있습니다:

  • Application 이벤트
  • Session 이벤트
  • <object> 선언
  • TypeLibrary 선언
  • #include 지시

Application과 Session 이벤트

Global.asa 파일에서는 application과 session 객체가 application/session이 시작되거나 종료될 때 무엇을 하여야 하는지 알릴 수 있습니다. 이 작업을 수행하는 코드는 이벤트 처리 프로그램에 위치합니다.

주석:Global.asa 파일에 코드를 삽입할 때는 <%와 %>, 대신 HTML <script> 태그 내부에 서브 프로그램을 배치해야 합니다:

<script language="vbscript" runat="server">
sub Application_OnStart
  ' 일부 코드
end sub
sub Application_OnEnd
  ' 일부 코드
end sub
sub Session_OnStart
  ' 일부 코드
end sub
sub Session_OnEnd
  ' 일부 코드
end sub
</script>

<object> 선언

<object> 태그를 사용하여 Global.asa 파일에서 session 또는 application 범위의 객체를 생성할 수도 있습니다.

주석:<object> 태그는 <script> 태그 밖에 위치해야 합니다!

문법:

<object runat="server" scope="scope" id="id">
{progid="progID"|classid="classID"}>
.......
</object>

TypeLibrary 선언

TypeLibrary는 COM 객체와 일치하는 DLL 파일의 내용을 포함하는 컨테이너입니다. Global.asa 파일에 TypeLibrary 호출을 포함하면 COM 객체의 상수에 접근할 수 있으며, ASP 코드도 오류를 더 잘 보고할 수 있습니다. Web 응용 프로그램이 이미 类型库에 선언된 데이터 타입의 COM 객체에 의존하는 경우, Global.asa에서 해당 类型库를 선언할 수 있습니다.

문법:

<!--
METADATA TYPE="TypeLib"
file="filename"
uuid="typelibraryuuid"
version="versionnumber"
lcid="localeid"
-->

Session 객체

Session 객체는 사용자 세션에 대한 정보를 저장하거나 설정을 변경하는 데 사용됩니다. Session 객체에 저장된 변수는 단일 사용자에 대한 정보를 가지고 있으며, 응용 프로그램의 모든 페이지에서 접근할 수 있습니다.

집합

  • Contents - 스크립트 명령으로 session에 추가된 모든 항목을 포함합니다
  • StaticObjects - session에 추가된 모든 HTML <object> 태그로 추가된 객체를 포함합니다
  • Contents.Remove(item/index) - Contents 집합에서 하나의 항목을 제거합니다
  • Contents.RemoveAll() - Contents 집합에서 모든 항목을 제거합니다

속성

  • CodePage - 동적 콘텐츠를 표시할 때 사용할 문자셋을 정의합니다
  • LCID - 동적 콘텐츠를 표시하는 데 사용할 지역 식별자를 설정합니다
  • SessionID - 세션 ID를 반환합니다
  • Timeout - 세션의 타임아웃 시간을 설정하거나 반환합니다

메서드

  • Abandon - 세션 객체에서 모든 객체를 취소합니다.

Application 객체

어떤 작업을 완료하기 위해 함께 작업하는 ASP 파일 집합을 하나의 응용 프로그램이라고 합니다. ASP에서 Application 객체는 이 파일들을 묶어주는 데 사용됩니다. 모든 사용자는 하나의 Application 객체를 묶습니다. Application 객체는 응용 프로그램에서 많은 페이지가 사용하는 정보(예: 데이터베이스 연결 정보)를 가지고 있어야 합니다.

집합

  • 콘텐츠 - 응용 프로그램에 스크립트 명령으로 추가된 모든 항목을 포함합니다.
  • StaticObjects - HTML의 <object> 태그를 사용하여应用程序에 추가된 모든 객체를 포함합니다
  • Contents.Remove - Contents 컬렉션에서 하나의 항목을 제거합니다
  • Contents.RemoveAll - Contents 컬렉션에서 모든 항목을 제거합니다

메서드

  • Lock - 사용자가 Application 객체의 변수를 수정하지 못하게 합니다
  • Unlock - 사용자가 Application 객체의 변수를 수정할 수 있게 합니다

Response 객체

Response 객체는 서버에서 사용자에게 출력을 전송하는 데 사용됩니다

집합

Cookies(name) - 쿠키의 값을 설정합니다. 존재하지 않으면 쿠키를 생성한 다음 지정된 값을 설정

속성

  • Buffer - 출력을 버퍼링할지 결정합니다. 출력이 버퍼링되었을 때, 서버는 모든 서버 스크립트가 처리되거나 스크립트가 Flush 또는 End 메서드를 호출될 때까지 브라우저에 응답을 차단합니다. 이�性질을 설정하려면, 그것은 .asp 파일의 <html> 태그 앞에 위치해야 합니다
  • CacheControl - ASP가 생성한 출력을代理 서버가 캐시할 수 있는지 설정합니다. Public으로 설정되면代理 서버가 페이지를 캐시합니다
  • Charset(charset_name) - 문자 집합의 이름을 Response 객체의 content-type 헤더에 추가
  • ContentType - Response 객체의 HTTP 콘텐츠 타입을 설정합니다。(예: "text/html", "image/gif", "image/jpeg", "text/plain")。기본 값은 "text/html"입니다
  • Expires - 페이지가 만료되기 전에 브라우저 캐시에 저장할 시간을 설정(분)
  • ExpiresAbsolute - 브라우저 페이지 캐시가 만료되는 날짜와 시간을 설정
  • IsClientConnected - 클라이언트가 서버에서 연결을 끊었는지 나타냅니다
  • Pics(pics_label) - response 헤더의 PICS 래블에 값을 추가
  • Status - 서버가 반환하는 상태 행의 값을 정의

메서드

  • AddHeader(name, value) - HTTP 응답에 새 HTTP 헤더와 값을 추가
  • AppendToLog string - 서버 로그 엔트리의 끝에 문자열 추가
  • BinaryWrite(data_to_write) - 문자 변환 없이 직접 출력에 데이터를 씁니다
  • Clear - 캐시된 출력을 지웁니다. 오류 처리를 위해 이 메서드를 사용합니다. Response.Buffer가 true로 설정되지 않았다면, 이 메서드는 실행 시간 오류를 발생시킵니다
  • End - 스크립트 처리를 중지하고 현재 결과를 반환합니다
  • Flush - 캐시된 출력을 즉시 전송합니다. Response.Buffer가 true로 설정되지 않았다면, 이 메서드는 실행 시간 오류를 발생시킵니다
  • Redirect(url) - 사용자를 다른 URL로 리디렉션합니다
  • Write(data_to_write) - 사용자에게 텍스트를 씁니다

Request 객체

브라우저가 서버로부터 페이지를 요청할 때, 이를 요청이라고 합니다. 요청 객체는 사용자로부터의 정보를 얻기 위해 사용됩니다.

집합

  • ClientCertificate - 고객 인증서에 저장된 필드 값 포함
  • Cookies(name) - 쿠키 값 포함
  • Form(element_name) - 폼 값 포함. 이 폼은 POST 메서드를 사용해야 합니다
  • QueryString(variable_name) - 쿼리 문자열에 포함된 변수 값 포함
  • ServerVariables(server_variable) - 서버 변수 값 포함

속성

  • TotalBytes - 요청 본문에서 클라이언트가 전송한 바이트 총 수를 반환합니다

메서드

  • BinaryRead - 클라이언트에서 서버로 보내진 POST 요청의 일부로부터 데이터를 얻습니다

Server 객체

Server 객체는 서버의 속성과 메서드에 액세스하기 위해 사용됩니다.

속성

ScriptTimeout - 스크립트가 종료되기 전에 얼마나 오래 실행될 수 있는지 설정하거나 반환합니다.

메서드

  • CreateObject(type_of_object) - 객체의 인스턴스를 생성합니다
  • Execute(path) - ASP 파일 내에서 또 다른 ASP 파일을 실행합니다. 호출된 ASP 파일이 실행되면, 제어권이 원래의 ASP 파일로 돌아갑니다
  • ) - 발생한 오류를 설명하는 ASPError 객체를 반환합니다
  • HTMLEncode(string) - 문자열에 HTML 인코딩을 적용합니다
  • MapPath(path) - 상대적이거나 가상 경로를 물리 경로로 매핑합니다
  • Transfer(path) - 모든 상태 정보를 다른 파일로 보내고 처리를 위해 저장합니다. 전송 후 프로그램의 제어권은 원래의 ASP 파일로 돌아오지 않습니다
  • URLEncode(string) - 문자열에 URL 인코딩 규칙을 적용합니다

출처: http://www.codew3c.com/asp/asp_quickref.asp