asp防止刷新性能实现代码
使用说明: 1.在要保护的页面顶部加如对AntiRefresh.asp文件的引用如: <!--#include virtual="AntiRefresh.asp" --> 2.接着添加调用代码 代码如下: <% Const VarNameDateArr="www_domai_net_App_DataArr" '队列名称 Const VarNameIPArr="www_domai_net_App_IPArr" '队列名称 Dim objAntiRefresh Set objAntiRefresh= new AntiRefresh objAntiRefresh.BufferSize=100 '队列大小 objAntiRefresh.CacheItemAvailTime=2 '间隔时间 If Not objAntiRefresh.IsValidAccess() Then Set objAntiRefresh=Nothing Response.Write("您的访问过去频繁请2秒后再试.") Response.End() End If Set objAntiRefresh=Nothing %> 其中要注意的是 Const VarNameDateArr="www_domai_net_App_DataArr" '队列名称 Const VarNameIPArr="www_domai_net_App_IPArr" '队列名称 比方你要在List.asp与search.asp中加入通一个防刷新器,那么你把上面的调用代码分别复制到这两个页面,或者保证两个页面的掉用代码一致。这样的效果是,你访问了List.asp页那么你在2秒内将不能访问List.asp或Search.asp页 如果你要2个页面独立,即你访问List.asp后,你会在2秒内不能再次访问List.asp,但是你可以访问Search.asp,反之毅然,那么你就要保证2个页面的 Const VarNameDateArr="xxx",Const VarNameIPArr="xxx"不同,比方第一个也面你用xxxList,第个个页面用xxxSearch, 如: Const VarNameDateArr="www_domai_net_App_DataArr_Search" '(_List) Const VarNameIPArr="www_domai_net_App_IPArr_Search" '(_List) 唠叨这些是给那么不太懂的朋友,以便他们能使用这些代码,如果你懂Asp那么以上的对你来说就很好理解了。 下面是AntiRefresh.asp文件源码 复制代码 代码如下: <% '*************************************** '* 页面防刷新模块 * '* WDFrog,2007-8-16 '*************************************** Class AntiRefresh Private IPArr,DateArr Private m_BufferSize Private m_CacheItemAvailTime Private Sub Class_Initialize() Application.Lock() m_BufferSize=100 m_CacheItemAvailTime=2 End Sub Private Sub Class_Terminate() Application.UnLock() End Sub Public Property Get CacheItemAvailTime CacheItemAvailTime=m_CacheItemAvailTime End Property Public Property Let CacheItemAvailTime(Value) m_CacheItemAvailTime=Value End Property Public Property Get BufferSize BufferSize=m_BufferSize End Property Public Property Let BufferSize(Value) m_BufferSize=Value End Property Private Sub EnsureArr() If IsArray(Application(VarNameDateArr)) Then DateArr=Application(VarNameDateArr) Else ReDim DateArr(BufferSize) End If If IsArray(Application(VarNameIPArr)) Then IPArr=Application(VarNameIPArr) Else ReDim IPArr(BufferSize) End If End Sub Public Function IsValidAccess() Dim ip,i ip=GetIP() IsValidAccess=True (编辑:银川站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |