我刚刚在网上找到了查询。我想找出方法。
只有爱好者才能解决此问题(谨慎)
我想知道有多少匿名用户在线。 服务器没有先验的概念,用户是"在线"。 你可以人为地定义术语" session"然后将会话数视为代表在线用户数。 如果您这样做并且使用Zope会话来实现" session"的概念,那么您可以查看" session_data_manager"找出有多少会话可用。 这对我来说已经足够了,知道还有多少会话可用。如果我能得到每个活动会话的ID列表,我可以 轻松构建我需要的列表(通过getSessionDataByKey()方法)... 我尝试过类似的东西:
但即使是"经理"被允许执行。
即使尝试外部方法:
def activesessionlist( self):
return self.temp_folder.keys()
没有任何影响,而是:
def sessionperiod( self):
return self.temp_folder.getPeriodSeconds()
工作正常。
你能帮我找一下活动会议清单吗?这是 让我疯狂......
答案 0 :(得分:1)
如果您想检查有多少匿名用户在线,您必须为每个用户创建一个会话,无论是匿名用户还是经过身份验证的用户。创建会话后。之后,您可以使用“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