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状态和控制查询。
GL_TRACE_EVENT 0x00002000 指示已引发 IIS 跟踪事件。
GL_CUSTOM_NOTIFICATION 0x00004000 指示发生了自定义全局级别通知。
GL_THREAD_CLEANUP 0x00008000 指示 IIS 已清理线程。

优先级别名常量

以下常量与 IHttpModuleRegistrationInfo::SetPriorityForRequestNotificationIHttpModuleRegistrationInfo::SetPriorityForGlobalNotification 方法一起使用,以指定通知的优先级。

注意

通知的优先级将反转 RQ_SEND_RESPONSE

常数 Value 说明
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 方法一起使用,以指定应克隆上下文的哪些部分。

常数 Value 说明
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 方法一起使用,以指定子上下文的执行行为。

常数 Value 说明
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进行缓存。

另请参阅

Web 服务器核心常量
Web 服务器核心 API 参考
IHttpContext::CloneContext 方法
IHttpContext::ExecuteRequest 方法
IHttpModuleRegistrationInfo::SetGlobalNotifications 方法
IHttpModuleRegistrationInfo::SetPriorityForRequestNotification 方法
IHttpModuleRegistrationInfo::SetPriorityForGlobalNotification 方法
IHttpModuleRegistrationInfo::SetRequestNotifications 方法