如何计算当前在线的经过身份验证和匿名的用户?
How to count authenticated and anonymous users currently online?
我刚在网上找到查询。我想弄清楚方法。
只有爱好者愿意解决这个问题(小心)
我想知道有多少匿名用户在线。
服务器没有先验概念"online"。
你可以人为地定义术语"session",然后将会话数视为代表在线用户数。
如果您这样做并使用 Zope 会话来实现您的 "session" 概念,那么您可以查看 "session_data_manager" 以找出有多少会话可用。
这对我来说绰绰有余,知道还有多少会话可用。如果我可以得到每个活动会话的 ID 列表,我可以
轻松构建我需要的列表(通过 getSessionDataByKey() 方法)...
我试过类似的东西:
但甚至 "manager" 也不允许执行该操作。
甚至尝试外部方法:
def activesessionlist( self):
return self.temp_folder.keys()
没有任何效果,而是:
def sessionperiod( self):
return self.temp_folder.getPeriodSeconds()
工作正常。
你能帮我找出活动会话列表吗?这是
快把我逼疯了...
如果您想检查有多少匿名用户在线,您必须为每个用户创建一个会话,无论是匿名用户还是经过身份验证的用户。创建会话后。之后,您可以使用 "session_data_manager"
计算在线用户数
def activesessionlist(self):
# GET Session Data Manager Object
sdm = self.context.session_data_manager
# Create Session if it's not created
session = sdm.getSessionData(create=True)
# Get Container where all the session object is stroed
container = sdm._getSessionDataContainer()
# Get Total Count of Active Session
active_users = len(container.keys())
return active_users
我刚在网上找到查询。我想弄清楚方法。
只有爱好者愿意解决这个问题(小心)
我想知道有多少匿名用户在线。 服务器没有先验概念"online"。 你可以人为地定义术语"session",然后将会话数视为代表在线用户数。 如果您这样做并使用 Zope 会话来实现您的 "session" 概念,那么您可以查看 "session_data_manager" 以找出有多少会话可用。 这对我来说绰绰有余,知道还有多少会话可用。如果我可以得到每个活动会话的 ID 列表,我可以 轻松构建我需要的列表(通过 getSessionDataByKey() 方法)... 我试过类似的东西:
但甚至 "manager" 也不允许执行该操作。
甚至尝试外部方法:
def activesessionlist( self):
return self.temp_folder.keys()
没有任何效果,而是:
def sessionperiod( self):
return self.temp_folder.getPeriodSeconds()
工作正常。
你能帮我找出活动会话列表吗?这是 快把我逼疯了...
如果您想检查有多少匿名用户在线,您必须为每个用户创建一个会话,无论是匿名用户还是经过身份验证的用户。创建会话后。之后,您可以使用 "session_data_manager"
计算在线用户数def activesessionlist(self):
# GET Session Data Manager Object
sdm = self.context.session_data_manager
# Create Session if it's not created
session = sdm.getSessionData(create=True)
# Get Container where all the session object is stroed
container = sdm._getSessionDataContainer()
# Get Total Count of Active Session
active_users = len(container.keys())
return active_users