Api 如何实现多个同时登录?

Api 如何实现多个同时登录?,api,rest,restful-authentication,Api,Rest,Restful Authentication,我构建了一个API,它基于访问令牌对请求进行身份验证。这些令牌大约在30分钟后过期,之后必须发送刷新令牌,或者用户必须重新验证以获得新的访问令牌。 我将令牌存储在数据库中,如下所示: 用户| id |选择器|访问|令牌|刷新|令牌|在生成| 将存储令牌的哈希值。 那么,如何实现多重登录? 我是否也将现有令牌发送到新设备,还是创建新令牌并在数据库中存储设备id之类的内容?您不应该在数据库中存储任何会话信息。如果客户机请求没有正确解释请求所需的所有信息,那么您没有遵循无状态约束,这意味着您没有执行R

我构建了一个API,它基于访问令牌对请求进行身份验证。这些令牌大约在30分钟后过期,之后必须发送刷新令牌,或者用户必须重新验证以获得新的访问令牌。 我将令牌存储在数据库中,如下所示: 用户| id |选择器|访问|令牌|刷新|令牌|在生成| 将存储令牌的哈希值。 那么,如何实现多重登录?
我是否也将现有令牌发送到新设备,还是创建新令牌并在数据库中存储设备id之类的内容?

您不应该在数据库中存储任何会话信息。如果客户机请求没有正确解释请求所需的所有信息,那么您没有遵循无状态约束,这意味着您没有执行REST


正确的方法是令牌本身具有时间戳或到期时间。显然,这些信息必须由服务器签名。请看一下这个库,了解如何使用它的示例:

我从来没有这样想过令牌。但最终实现了JWT。谢谢JWT也非常适合这样做。我完全忘记了。我可以将JWT用于授权授予代码(oauth2)还是应该将它们存储在DB中(不是无状态的),但我需要确保它们只使用一次。