我知道您可以使用Phoenix.Token生成和验证API的令牌。
我这样生成:
session = %{token: Phoenix.Token.sign(conn, "user", user.id)}
验证:
Phoenix.Token.verify(conn, "user", token)
我不明白我如何组织"删除"用户注销时的会话。有可能吗?
答案 0 :(得分:0)
令牌是签名字符串,Phoenix.Token.verify
只会检查令牌是否使用真正的机密生成。无法使令牌无效。
根据您的需要,您可以将令牌存储在用户相关的表中,例如auth_tokens
,当用户注销时,您可以从那里删除令牌。当用户再次登录时,创建一个新的。
令牌的主要目的是确保它是在可信实例上生成的,一旦创建,verify
函数将始终接受这样的令牌。