Описание объекта Server

Описываемый объект позволяет получать доступ к серверу через меоды и свойства. Большинство из этих методов и свойств используются как утилитные функции.

Методы:

Свойства:

 
Метод Server.CreateObject

Данный объект создает экземпляр серверного компонента. Если компонент был описан в OnStartPage и OnEndPage методах, то OnStartPage - метод вызовет его в этот момент.

Синтакс:

Server.CreateObject( идентификатор_программы )

Параметры:

идентификатор_программы
Указывает тип объекта, который будет создан. Формат идентификаотра_программы следующий: [владелец]Компонент[.Версия].
Замечания:
По умолчанию, объекты создаются методом Server.CreateObject из вашей страницы. Это подразумевает, что объект будет автоматически уничтожен как только сервер завершит обработку данной ASP-страницы.

Для создания объекта в виде сессии или приложения вы можете также использовать тэг <OBJECT> и установить атрибут SCOPE в значение SESSION или APPLICATION или сохранить объект в переменной сессии или приложения.

К примеру, объект сохранен в переменной сессии, как показано в следующем скрипте, и будет удален, когда объект Session будет утилизирован. А также тогда, когда истекло максимальное время сессии или же был вызван метод Abandon.

<% Set Session("ad") = Server.CreateObject("MSWC.AdRotator") %>

Вы также можете уничтожить объект установив переменную копии объекта в значение Nothing или присвоить ей новое значение, как показано выше. Первый пример удаляет объект Ad. Второй заменяет Ad строкой.

<% Session("Ad") = Nothing %>
<% Session("Ad") = "Какая-то строка текста" %>

Вы не можете создать экземпляр объекта с тем же именем, что и сам встроенный объект. К примеру, следующий скрипт вызовет ошибку:

<% Set Response = Server.CreateObject("Response") %>

Примеры:
<% Set MyAd = server.CreateObject("MSWC.AdRotator") %>

Приведенный пример показывает создание серверного компонента MyAd, как экземпляр встроенного компонента MSWC.AdRotator который может быть использован для автоматизации рекламной акции на web-страницах.
 
 

Метод Server.HTMLEncode

Данный метод позволяет установить HTML-кодировку указанной строке.

Синтакс:

Server.HTMLEncode ( строка)

Параметры:

строка
Указанная строка для преобразования.
Примеры:
Следующий скрипт
<% = Server.HTMLEncode("Тэг параграфа - <p>") %>
выведет следующий текст:

Тэг параграфа - &lt;P&gt;

Замечание:
Но на броузере предыдущий пример отобразит:

Тэг параграфа - <p>

Если вы смотрите источник или открываете страничку как текст, то вы будете иметь возможность видеть преобразованный HTML.

 
Метод Server.MapPath

Данный метод позволяет установить указать относительный путь с соответствующей физической директории на сервере.

Синтакс:

Server.MapPath ( путь)

Параметры:

путь
Указывается относительный или виртуальный путь к физической (реальной) директории. Если путь начинается с прямого (/) или обратного (\) слэша, то метод MapPath возвратит путь, как если путь - полный виртуальный путь.
Примеры:
К примеру, мы имеем файл data.txt, расположенный в директории c:\Inetpub\wwwroot\scripts, как и файл test.asp, содержащий наш пример. Директория c:\InetPub\wwwroot является корнем сервера (домашней директорией).

Следующий пример использует серверную переменную PATH_INFO для определения пути к данному файлу.

<% = server.mappath(request.ServerVariables("PATH_INFO"))%>

данный скрипт возвратит браузеру следующий текст:

c:\inetpub\wwwroot\scripts\test.asp

Потому, что параметр пути в следующем примере начинается со слэша он будет отнесен к относительному пути текущей директории, т.е в данном случае c:\inetpub\wwwroot\script.

<% = server.mappath("data.txt")%><br>
<% = server.mappath("script/data.txt")%><br>

Данный пример возвратит:

c:\inetpub\wwwroot\script\data.txt
c:\inetpub\wwwroot\script\script\data.txt

Следующие два примера используют слэш чтобы указать, что возвращенный путь был в виде полного полного виртуального пути на сервере.

<% = server.mappath("/script/data.txt")%><BR>
<% = server.mappath("\script")%><BR>

Данный пример возвратит:

c:\inetpub\script\data.txt
c:\inetpub\script

Замечание:
Данный метод не поддерживает относительного пути с использованием (.) или (..). К примеру, следующий относительный путь ../MyDir/MyFile.txt возвратит ошибку.

Метод MapPath не проверяет того факта, что возвращаемый путь является правильным и существует на сервере.

 
Метод Server.URLEncode

Данный метод применяет методы кодирования URL, включая escape-последовательности к заданной строке.

Синтакс:

Server.URLEncode ( строка)

Параметры:

строка
Заданная строка для преобразования.
Примеры:
Следующий пример

<% response.write(server.URLEncode("http://www.microsoft.com")) %>

возвратит браузеру следующий текст:

http%3A%2Fwww%2Emicrosoft%2Ecom
 
 

Свойство Server.ScriptTimeout

Данное свойство указывает максимальное время, прежде чем выполнение скрипта должно будет прерваться.

Синтакс:

Server.ScriptTimeout = время_в_секундах

Параметры

время_в_секундах
Указанное время в секундах с момента начала выполнения скрипта до того момента, когда сервер прервет его выполнение. По умолчанию это 90 секунд.
Пример:
Следующий пример устанавливает время выполнения скрипта в 100 секунд:

<% Server.ScriptTimeout = 100 %>

А также вы можете использовать данное свойство для того, чтобы получить данное значение:

<% TimeOut = Server.ScriptTimeout %>

Замечание:
По умолчанию ScriptTimeout может быть установлен для вэб сервера используя свойство AspScriptTimeout в метабазе. Свойство ScriptTimeout не может быть установлено в значение, меньшее, чем указано в метабазе.