Поделиться через


константы Request-Processing

В этом разделе описываются константы, определенные в файле заголовка Httpserv.h.

Константы обработки запросов

Детерминированные константы уведомлений Request-Level

Следующие константы используются с методом IHttpModuleRegistrationInfo::SetRequestNotifications , чтобы указать, какие последовательные уведомления уровня запроса будет обрабатывать модуль HTTP.

Константа Битовой маски Описание
RQ_BEGIN_REQUEST 0x00000001 Указывает, что СЛУЖБЫ IIS начали обработку запроса.
RQ_AUTHENTICATE_REQUEST 0x00000002 Указывает, что служба IIS выполнила проверку подлинности запроса.
RQ_AUTHORIZE_REQUEST 0x00000004 Указывает, что iis авторизовать запрос.
RQ_RESOLVE_REQUEST_CACHE 0x00000008 Указывает, что службы IIS выполнили запрос из кэша.
RQ_MAP_REQUEST_HANDLER 0x00000010 Указывает, что службы IIS сопоставили обработчик для запроса.
RQ_ACQUIRE_REQUEST_STATE 0x00000020 Указывает, что служба IIS приобрела состояние для запроса.
RQ_PRE_EXECUTE_REQUEST_HANDLER 0x00000040 Указывает, что службы IIS будут выполнять обработчик запросов.
RQ_EXECUTE_REQUEST_HANDLER 0x00000080 Указывает, что служба IIS выполнила обработчик запросов.
RQ_RELEASE_REQUEST_STATE 0x00000100 Указывает, что службы IIS освободили состояние для запроса.
RQ_UPDATE_REQUEST_CACHE 0x00000200 Указывает, что службы IIS обновили кэш.
RQ_LOG_REQUEST 0x00000400 Указывает, что iis зарегистрировал запрос.
RQ_END_REQUEST 0x00000800 Указывает, что служба IIS завершила запрос.

Недетерминированные константы уведомлений Request-Level

Следующие константы используются с методом IHttpModuleRegistrationInfo::SetRequestNotifications , чтобы указать, какие уведомления на уровне запроса будут обрабатываться модулем HTTP.

Константа Битовой маски Описание
RQ_CUSTOM_NOTIFICATION 0x10000000 Указывает, что произошло пользовательское уведомление на уровне запроса.
RQ_SEND_RESPONSE 0x20000000 Указывает, что СЛУЖБЫ IIS отправили ответ.
RQ_READ_ENTITY 0x40000000 Указывает, что СЛУЖБЫ IIS считывают данные из сущности запроса.
RQ_MAP_PATH 0x80000000 Указывает, что СЛУЖБЫ IIS сопоставили URL-адрес с физическим путем.

Глобальные константы уведомлений

Следующие константы используются с методом IHttpModuleRegistrationInfo::SetGlobalNotifications , чтобы указать, какие уведомления глобального уровня будет обрабатывать модуль HTTP.

Константа Битовой маски Описание
GL_STOP_LISTENING 0x00000002 Указывает, что службы IIS перестали принимать новые запросы.
GL_CACHE_CLEANUP 0x00000004 Указывает, что службы IIS очистили кэш.
GL_CACHE_OPERATION 0x00000010 Указывает, что произошла операция кэширования.
GL_HEALTH_CHECK 0x00000020 Указывает, что произошло проверка работоспособности.
GL_CONFIGURATION_CHANGE 0x00000040 Указывает, что конфигурация IIS изменилась.
GL_FILE_CHANGE 0x00000080 Указывает, что файл был изменен.
GL_PRE_BEGIN_REQUEST 0x00000100 Указывает, что запрос будет входить в интегрированный конвейер обработки запросов.
GL_APPLICATION_START 0x00000200 Указывает, что запущено приложение.
GL_APPLICATION_RESOLVE_MODULES 0x00000400 Указывает, что службы IIS разрешили модули для приложения.
GL_APPLICATION_STOP 0x00000800 Указывает, что приложение завершило работу.
GL_RSCA_QUERY 0x00001000 Указывает, что был выдан запрос Run-Time Status and Control.
GL_TRACE_EVENT 0x00002000 Указывает, что возникло событие трассировки IIS.
GL_CUSTOM_NOTIFICATION 0x00004000 Указывает, что произошло настраиваемое уведомление глобального уровня.
GL_THREAD_CLEANUP 0x00008000 Указывает, что службы IIS очистили поток.

Константы псевдонима приоритета

Следующие константы используются с методами IHttpModuleRegistrationInfo::SetPriorityForRequestNotification и IHttpModuleRegistrationInfo::SetPriorityForGlobalNotification для указания уровня приоритета для уведомлений.

Примечание

Уровни приоритета инвертируются для RQ_SEND_RESPONSE уведомлений.

Константа Значение Описание
PRIORITY_ALIAS_FIRST L"FIRST" Указывает, что модуль должен быть обработан раньше всех остальных модулей. Для RQ_SEND_RESPONSE уведомлений указывает, что модуль должен обрабатываться после всех остальных модулей.
PRIORITY_ALIAS_HIGH L"HIGH" Указывает, что модуль должен обрабатываться с высоким приоритетом. Для RQ_SEND_RESPONSE уведомлений указывает, что модуль должен обрабатываться с низким приоритетом.
PRIORITY_ALIAS_MEDIUM L"MEDIUM" Указывает, что модуль должен обрабатываться со средним приоритетом.
PRIORITY_ALIAS_LOW L"LOW" Указывает, что модуль должен обрабатываться с низким приоритетом. Для RQ_SEND_RESPONSE уведомлений указывает, что модуль должен обрабатываться с высоким приоритетом.
PRIORITY_ALIAS_LAST L"LAST" Указывает, что модуль должен обрабатываться после всех остальных модулей. Для RQ_SEND_RESPONSE уведомлений указывает, что модуль должен быть обработан раньше всех остальных модулей.

Константы Context-Cloning

Следующие константы используются с методом IHttpContext::CloneContext , чтобы указать, какие разделы контекста следует клонировать.

Константа Значение Описание
CLONE_FLAG_BASICS 0x01 Указывает, что URL-адрес, строка запроса и метод HTTP должны быть клонированы.
CLONE_FLAG_HEADERS 0x02 Указывает, что заголовки запроса должны быть клонированы.
CLONE_FLAG_ENTITY 0x04 Указывает, что тело сущности должно быть клонировано.
CLONE_FLAG_NO_PRECONDITION 0x08 Указывает, что все заголовки range и if-для запроса не должны включаться в операцию клонирования.
CLONE_FLAG_NO_DAV 0x10 Указывает, что заголовки WebDAV для запроса не должны включаться в операцию клонирования.

Константы Request-Execution

Следующие константы используются с методом IHttpContext::ExecuteRequest для указания поведения выполнения для дочернего контекста.

Константа Значение Описание
EXECUTE_FLAG_NO_HEADERS 0x01 Указывает, что заголовки HTTP для дочернего запроса должны быть подавлены.
EXECUTE_FLAG_IGNORE_CURRENT_INTERCEPTOR 0x02 Указывает, что текущий обработчик сопоставления скриптов для этой цепочки запросов следует игнорировать.
EXECUTE_FLAG_IGNORE_APPPOOL 0x04 Указывает, что запрос должен быть выполнен, даже если дочерний запрос находится не в том же пуле приложений.
EXECUTE_FLAG_DISABLE_CUSTOM_ERROR 0x08 Указывает, что пользовательские ошибки для дочернего запроса должны быть отключены.
EXECUTE_FLAG_SAME_URL 0x10 Указывает, что URL-адрес дочернего запроса совпадает с URL-адресом родительского запроса.
EXECUTE_FLAG_BUFFER_RESPONSE 0x20 Указывает, что дочерний ответ должен быть возвращен родительскому запросу, а не очищаться.
EXECUTE_FLAG_HTTP_CACHE_ELIGIBLE 0x40 Указывает, что дочерний ответ по-прежнему имеет право на кэширование Http.sys.

См. также:

Константы основных веб-серверов
Справочник по API основных веб-серверов
Метод IHttpContext::CloneContext
Метод IHttpContext::ExecuteRequest
Метод IHttpModuleRegistrationInfo::SetGlobalNotifications
Метод IHttpModuleRegistrationInfo::SetPriorityForRequestNotification
Метод IHttpModuleRegistrationInfo::SetPriorityForGlobalNotification
Метод IHttpModuleRegistrationInfo::SetRequestNotifications