是否有正确的方法来检查是否已使用 FosUserBundle 使用令牌?

Is there a proper way to check is a token is already used using FosUserBundle?

我正在使用 FosUserBundle,以便通过发送电子邮件和确认令牌来重置密码。

我在 config.yml 中配置 retry_ttl 和 token_ttl 来设置令牌的持续时间。

fos_user:
...
resetting:
retry_ttl: 60 # Value in seconds, logic will use as hours
token_ttl: 86400

这些参数效果很好。但我想添加一个参数来检查令牌是否已被使用。我的意思是,如果用户已经点击了确认电子邮件,则令牌将只可用一次。然后它将被摧毁。 我该如何处理?

感谢您的回复。

fos 用户包已经是这样了... 当密码重置完全完成时,在字段中请求的确认令牌 + 密码设置为空。

PS:copy/pasted 评论作为未来可见度的答案