📄 whosonhandler.vb
字号:
Imports System.Web
Imports System.Collections
Imports Microsoft.VisualBasic
Namespace WhosOn
Public Class WhosOnHandler
Implements IHttpHandler
Public Sub ProcessRequest( objContext As HttpContext ) _
Implements IHttpHandler.ProcessRequest
Dim colPageStats As Queue
Dim strPath As String
Dim objStatsEntry As StatsEntry
' Get Page Path
strPath = objContext.Request.Path
strPath = strPath.SubString( 0, InstrRev( strPath, "." ) - 1 )
' Display the Stats
colPageStats = CType( objContext.Cache( "whoson_" & strPath ), Queue )
If Not colPageStats Is Nothing Then
objContext.Response.Write( "<table border=1 cellpadding=4>" )
objContext.Response.Write( "<tr><td colspan=4 bgcolor=orange>" )
objContext.Response.Write( "<b>Who's On</b>" )
objContext.Response.Write( "</td></tr>" )
objContext.Response.Write( "<tr colspan=4 bgcolor=#eeeeee>" )
objContext.Response.Write( "<th>Timestamp</th>" )
objContext.Response.Write( "<th>Browser Type</th>" )
objContext.Response.Write( "<th>Remote Address</th>" )
objContext.Response.Write( "<th>Referrer</th>" )
objContext.Response.Write( "</td></tr>" )
For each objStatsEntry in colPageStats
objContext.Response.Write( "<tr>" )
objContext.Response.Write( "<td>" & objStatsEntry.TimeStamp & " </td>" )
objContext.Response.Write( "<td>" & objStatsEntry.BrowserType & " </td>" )
objContext.Response.Write( "<td>" & objStatsEntry.UserHostName & " </td>" )
objContext.Response.Write( "<td>" & objStatsEntry.Referrer & " </td>" )
Next
objContext.Response.Write( "</table>" )
End If
End Sub
ReadOnly Property IsReusable() As Boolean _
Implements IHttpHandler.IsReusable
Get
Return True
End Get
End Property
End Class
End Namespace
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -