CHttpFilter

CHttpFilter没有基类。
CHttpFilter与CHttpFilterContext一起,创建并管理超文本传输协议(HTTP)过滤器对象。一个HTTP过滤器是一个可替换的动态链接库(DLL),服务器对任意HTTP请求调用。当过滤器被装载时,它向服务器说明了它对何种通知感兴趣。此后,无论何种选择的事件发生,过滤器就被调用并提供执行事件的条件。
ISAPI (Internet Server API)过滤器功能极强,有以下应用:
1.定制的鉴定策略
2.压缩
3.加密
4.登录
5.流量分析或其它分析
可安装多个过滤器。通知次序基于由过滤器确定的优先级及任意联系的登录的装载命令。可查看滤器的文档,看看如何安装过滤器。
注意:
一旦过滤器开始执行一个请求,则不管是对文件还是ISAPI应用,它都将接收数据。
过滤器应用于面向客户的网络连接和HTTP服务器之间。依赖于过滤器所选择的选项,它可以参与多种服务器活动,包括从客户机读取原始数据、处理头、通过安全端口通信(PCT——个人通信技术,SSL——安全套接字子层,以及其它)、或者HTTP请求处理的一些其它阶段。
设置过滤器所用的过滤器通知,请参阅 GetFilterVersion。
要了解有关Internet 过滤器的更多信息,请参阅联机文档“Visual C++程序员指南”中的“ISAPI扩展:过滤器”。至于用ISAPI Extension Wizard创建Internet过滤器,请参阅联机文档“Visual C++程序员指南”中的“构造一个典型的ISAPI过滤器”。
#include <afxisapi.h>
请参阅:CHttpFilterContext, CHttpServer, CHttpServerContext


CHttpFilter类的成员

构造函数
CHttpFilter构造一个CHttpFilter对象

属性
GetFilterVersion在CHttpFilter对象被构造后,得到过滤器的版本

可覆盖的函数
OnReadRawData允许查阅原始数据。返回的数据将包含标题和数据
OnPreprocHeaders提示客户:服务器已预处理过客户标题
OnAuthentication鉴定客户OnUrlMap当服务器正将一个逻辑URL映射到物理路径上时,提醒客户
OnSendRawData从服务器发送原始数据到客户机
OnLog向服务器文件登录信息
OnEndOfNetSession提示客户,进程结束

操作
HttpFilterProc返回消息,指示通过过滤器的事件如何被执行。发生一个事件就调用一次