RESTful 并发用户管理
RESTful concurrent user management
我在 AngularJS 有一个网站。以及一个基本上被简化为 RESTful API 的后端。当前登录方式如下:
用户提供登录凭据 -> 发送到服务器 -> 验证信息并交付将用于 API 上未来请求的令牌。
API 本身也可以匿名使用。
现在我明白在 RESTful 环境中,我不应该使用会话,但是如果我想显示最近 15 分钟内在线的用户怎么办?我如何确定最近 15 分钟内在线的用户是经过身份验证还是匿名的?
我并不是在寻找任何代码示例,而是在寻找思考的食物。
谢谢
我建议您也将日期字段添加到用户实体中,例如 lastAccessDate
,并且对于用户的每个 API 请求,您都将 lastAccessDate
更新为当前日期 (now()
) .
要获取过去 15 分钟内所有活跃的用户,您只需要在您的数据库中使用以下条件进行查询:now() - lastAccessDate < 15 minutes
要跟踪匿名用户,您需要添加单独的实体 guests
、activities
、shadow users
、anonymous users
可能是这种情况下的不错选择。
这听起来有帮助吗?
我在 AngularJS 有一个网站。以及一个基本上被简化为 RESTful API 的后端。当前登录方式如下:
用户提供登录凭据 -> 发送到服务器 -> 验证信息并交付将用于 API 上未来请求的令牌。
API 本身也可以匿名使用。
现在我明白在 RESTful 环境中,我不应该使用会话,但是如果我想显示最近 15 分钟内在线的用户怎么办?我如何确定最近 15 分钟内在线的用户是经过身份验证还是匿名的?
我并不是在寻找任何代码示例,而是在寻找思考的食物。
谢谢
我建议您也将日期字段添加到用户实体中,例如 lastAccessDate
,并且对于用户的每个 API 请求,您都将 lastAccessDate
更新为当前日期 (now()
) .
要获取过去 15 分钟内所有活跃的用户,您只需要在您的数据库中使用以下条件进行查询:now() - lastAccessDate < 15 minutes
要跟踪匿名用户,您需要添加单独的实体 guests
、activities
、shadow users
、anonymous users
可能是这种情况下的不错选择。
这听起来有帮助吗?