我正在尝试创建一个应用程序,允许用户使用通过电子邮件发送给他们的访问代码来访问他们的帐户。我应该如何存储此访问代码并使用它来检查哪个用户正在尝试访问?
用户不必提供他们的电子邮件,所以我没有简单的方法来检查数据库中的哈希访问代码是否不经过每个用户。
我正在尝试创建一个应用程序,允许用户使用通过电子邮件发送给他们的访问代码来访问他们的帐户。我应该如何存储此访问代码并使用它来检查哪个用户正在尝试访问?
用户不必提供他们的电子邮件,所以我没有简单的方法来检查数据库中的哈希访问代码是否不经过每个用户。
您可以使用has_secure_token。只需将其存储在数据库中(比如说,作为access_token属性),当用户尝试访问时,通过作为参数提供的访问令牌查找用户。
User.find_by(access_token: params[:access_token])