Szybki przegląd ASP

Szybki przegląd ASP z CodeW3C.com. Wydrukuj, włóż do kieszeni, aby mieć zawsze pod ręką.

Podstawowa gramatyka

Skrypty ASP są otoczone <% i %> %>. W ten sposób wysyłasz zawartość do przeglądarki:

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

Domyślnym językiem w ASP jest VBScript. Jeśli chcesz użyć innego języka skryptowego, dodaj deklarację języka na początku strony ASP:

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

Formularze i dane wprowadzane przez użytkownika

Request.QueryString jest używane do zbierania wartości z formularza o metodzie "get". Informacje wysyłane przez GET są widoczne dla wszystkich (wyświetlane w pasku adresu przeglądarki) i mają ograniczenia dotyczące ilości wysyłanych danych.

Request.Form jest używane do zbierania wartości z formularza o metodzie "post". Informacje wysyłane przez POST z formularza są niewidoczne dla innych osób i nie ma ograniczeń dotyczących ilości wysyłanych danych.

Ciasteczka ASP

Cookie jest używane do rozpoznawania użytkowników. Cookie to mały plik umieszczony na komputerze użytkownika przez serwer. Każdy raz, gdy ten sam komputer prosi o stronę za pomocą przeglądarki, również wysyła cookie.

Polecenie Response.Cookies jest używane do tworzenia cookie:

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

Uwaga: Polecenie Response.Cookies musi znajdować się przed znacznikiem <html>!

Polecenie "Request.Cookies" jest używane do uzyskania wartości cookie:

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

Wskazówka: Plik

Polecenie #include pozwala na wstawienie zawartości jednego pliku ASP do innego przed jego wykonaniem przez serwer. Polecenie #include jest używane do tworzenia funkcji, nagłówków, stopków lub elementów powtarzających się na wielu stronach.

Gramatyka:

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

lub

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

Proszę użyć słowa kluczowego virtual, aby wskazać ścieżkę zaczynającą się od wirtualnego katalogu. Jeśli plik o nazwie "header.inc" znajduje się w wirtualnym katalogu o nazwie /html, to poniższy kod wstawi zawartość "header.inc":

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

Użyj słowa kluczowego file, aby wskazać ścieżkę względna. Ścieżka względna zaczyna się od katalogu zawierającego plik z odniesieniem. Jeśli plik znajduje się w katalogu html, a plik "header.inc" znajduje się w html\headers, poniższy kod wstawi zawartość "header.inc":

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

Użyj słowa kluczowego file oraz składni (..\) do odniesienia się do plików w wyższych katalogach.

Global.asa

Plik Global.asa jest plikiem opcjonalnym i może zawierać deklaracje obiektów, zmienne i metody, które mogą być dostępne z każdej strony aplikacji ASP.

Komentarz: Plik Global.asa musi się znajdować w głównym katalogu aplikacji ASP i każdy program aplikacji może mieć tylko jeden plik Global.asa.

Plik Global.asa może zawierać tylko następujące elementy:

  • Zdarzenia Application
  • Zdarzenia Session
  • <object> deklaracja
  • Deklaracja TypeLibrary
  • polecenie #include

Zdarzenia Application i Session

W pliku Global.asa można określić, co ma się dziać, gdy aplikacja i sesja zaczynają się i kończą. Kod do wykonania tych zadań znajduje się w event handlerach.

Komentarz: Wstawiając kod do pliku Global.asa, nie używamy <% i %>، musimy umieścić procedury wewnątrz znacznika <script> w HTML:

<script language="vbscript" runat="server">
sub Application_OnStart
  ' pewien kod
end sub
sub Application_OnEnd
  ' pewien kod
end sub
sub Session_OnStart
  ' pewien kod
end sub
sub Session_OnEnd
  ' pewien kod
end sub
</script>

<object> deklaracja

Używając znacznika <object>, można również tworzyć obiekty z zasięgiem sesji lub aplikacji w Global.asa.

Komentarz: <object> znacznik powinien się znaleźć poza znacznikiem <script>!

Gramatyka:

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

Deklaracja TypeLibrary

TypeLibrary jest kontenerem zawartości DLL, który odpowiada obiektom COM. Dzięki włączeniu odwołania do TypeLibrary w pliku Global.asa można uzyskać dostęp do stałych obiektów COM, a kod ASP może lepiej zgłaszać błędy. Jeśli Twoja aplikacja internetowa zależy od obiektów COM, które są deklarowane w typolibrze, możesz zadeklarować ten typoliber w Global.asa.

Gramatyka:

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

Obiekt Session

Obiekt Session służy do przechowywania informacji o sesji użytkownika lub zmiany jej ustawień. Zmienne przechowywane w obiekcie Session zawierają informacje o jednym użytkowniku i mogą być dostępne przez wszystkie strony aplikacji.

zbiór

  • Contents - zawiera wszystkie wpisy dodane do sesji za pomocą poleceń skryptowych
  • StaticObjects - zawiera wszystkie obiekty dodane do sesji za pomocą znacznika <object> HTML
  • Contents.Remove(item/index) - usuwa jeden element z kolekcji Contents
  • Contents.RemoveAll() - usuwa wszystkie elementy z kolekcji Contents

właściwość

  • CodePage - określa zestaw znaków używany do wyświetlania dynamicznego zawartości
  • LCID - ustawia identyfikator regionu używany do wyświetlania dynamicznego zawartości
  • SessionID - zwraca identyfikator sesji
  • Timeout - ustawia lub zwraca czas wygaśnięcia sesji

metoda

  • Abandon - kasuje wszystkie obiekty w obiekcie sesji.

Obiekt Application

Zestaw plików ASP współpracujących w celu wykonania zadania nazywa się aplikacją. Obiekt Application w ASP służy do zbierania tych plików razem. Wszystcy użytkownicy używają jednego obiektu Application. Obiekt Application powinien przechowywać informacje używane przez wiele stron aplikacji (np. informacje o połączeniu z bazą danych).

zbiór

  • Zawartość - zawiera wszystkie projekty dodane do aplikacji za pomocą poleceń skryptowych
  • StaticObjects - Zawiera wszystkie obiekty dodane do aplikacji za pomocą znacznika <object> w HTML
  • Contents.Remove - Usuwa jeden element z kolekcji Contents
  • Contents.RemoveAll - Usuwa wszystkie elementy z kolekcji Contents

metoda

  • Lock - Zapobiega modyfikacji zmiennych w obiekcie Application
  • Unlock - Pozwala użytkownikom na modyfikację zmiennych w obiekcie Application

Obiekt Response

Obiekt Response używany jest do wysyłania wyjścia z serwera do użytkownika

zbiór

Cookies(name) - Ustawia wartość cookie. Jeśli nie istnieje, tworzy cookie i ustawia określoną wartość

właściwość

  • Buffer - Określa, czy wyjście ma być buforowane. Gdy wyjście jest ustawione na buforowanie, serwer blokuje odpowiedź do przeglądarki, aż wszystkie skrypty serwerowe zostaną przetworzone lub gdy skrypt wywoła metody Flush lub End. Jeśli należy ustawić tę właściwość, powinna ona znajdować się przed znacznikiem <html> w pliku .asp
  • CacheControl - Ustawia, czy serwer proxy może缓存 wyjście generowane przez ASP. Jeśli ustawione na Public, serwer proxy będzie缓存 stronę
  • Charset(charset_name) - Dodaje nazwę kodowania znaków do nagłówka content-type obiektu odpowiedzi
  • ContentType - Ustawia typ treści HTTP obiektu odpowiedzi. Na przykład "text/html", "image/gif", "image/jpeg", "text/plain". Domyślnie to "text/html"
  • Expires - Ustawia czas w minutach, przez który strona jest przechowywana w pamięci podręcznej przeglądarki przed wygaśnięciem
  • ExpiresAbsolute - Ustawia datę i czas, po którym strona w przeglądarce przestaje być przechowywana w pamięci podręcznej
  • IsClientConnected - Wskazuje, czy klient został odłączony od serwera
  • Pics(pics_label) - Dodaje wartość do flagi PICS w nagłówku odpowiedzi
  • Status - Określa wartość wiersza stanu zwracanego przez serwer

metoda

  • AddHeader(name, value) - Dodaje nowy nagłówek HTTP i wartość do odpowiedzi HTTP
  • AppendToLog string - Dodaje ciąg znaków do końca logu serwera (server log entry)
  • BinaryWrite(data_to_write) - bez konwersji znaków bezpośrednio zapisz dane do wyjścia
  • Clear - wyczyścić zbuforowaną wyjściową. Użyj tej metody do obsługi błędów. Jeśli Response.Buffer nie jest ustawiony na true, metoda spowoduje błąd w czasie działania
  • End - zatrzymanie przetwarzania skryptu i zwrócenie bieżących wyników
  • Flush - natychmiast wysłać już zbuforowaną wyjściową. Jeśli Response.Buffer nie jest ustawiony na true, metoda spowoduje błąd w czasie działania
  • Redirect(url) - przekierowanie użytkownika do innej URL
  • Write(data_to_write) - zapisz tekst do użytkownika

Obiekt Request

Kiedy przeglądarka żąda strony od serwera, nazywa się to żądaniem. Obiekt Request służy do uzyskiwania informacji od użytkownika

zbiór

  • ClientCertificate - zawiera wartości pól przechowywanych w certyfikacie klienta
  • Cookies(name) - zawiera wartości ciasteczek
  • Form(element_name) - zawiera wartości formularza. Formularz musi być wysłany metodą POST
  • QueryString(variable_name) - zawiera wartości zmiennych w zapytaniu
  • ServerVariables(server_variable) - zawiera wartości zmiennych serwera

właściwość

  • TotalBytes - zwraca całkowitą liczbę bajtów wysłanych w ciele żądania przez klienta

metoda

  • BinaryRead - zwraca dane wysłane jako część żądania POST z klienta do serwera

Obiekt Server

Obiekt Server służy do dostępu do właściwości i metod na serwerze

właściwość

ScriptTimeout - ustawienie lub zwrócenie czasu, przez który skrypt może działać przed zakończeniem

metoda

  • CreateObject(type_of_object) - tworzenie instancji obiektu
  • Execute(ścieżka) - wykonywanie innego pliku ASP wewnętrznie w pliku ASP. Po zakończeniu wykonywania pliku ASP, kontrola powraca do oryginalnego pliku ASP
  • ) - zwraca obiekt ASPError opisujący wystąpienie błędu
  • HTMLEncode(string) - zastosowanie kodowania HTML do ciągu znaków
  • MapPath(ścieżka) - Mapowanie ścieżki względnej lub wirtualnej na ścieżkę fizyczną
  • Transfer(ścieżka) - wysyłanie wszystkich informacji stanowych do innego pliku, na wypadek przetwarzania. Po wysłaniu, kontrola programu nie wróci do oryginalnego pliku ASP
  • URLEncode(string) - zastosowanie zasad URL do ciągów znaków

Źródło: http://www.codew3c.com/asp/asp_quickref.asp