日期:2014-05-18  浏览次数:20556 次

控制用户访问速度!!!!防止机器人下载。
我现在的数据库数据不想让用户利用软件下载,如何控制他访问速度,比如一个IP在1分钟内不能下载10条数据,最好怎么样控制?

------解决方案--------------------

在:Global.asax
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
' 在应用程序启动时运行的代码

Dim vTable As Hashtable = New Hashtable '新哈希表
Application( "UserVisiteLastDate ") = vTable

End Sub


在页面程序PAGELOAD

Dim vTable As Hashtable = Application( "UserVisiteLastDate ")
Dim HashtableKey As String = IpAddirss 'Ip地址
Dim nowTicks As Long = DateTime.Now.Ticks
If vTable.Contains(HashtableKey) = True Then '在哈希表内存在
Dim oldTicks As Long = CLng(vTable(HashtableKey))
If nowTicks - oldTicks <= 10000000 Then '设置连续访问时间1秒
'不允许访问
Else
vTable(HashtableKey) = nowTicks
'允许访问
End If
Else