繁体   English   中英

单击 email 中的链接时,Django allauth 密码重置不起作用,否则有效

[英]Django allauth password reset doesn't work when clicking the link from email, but works otherwise

应该发生什么:

该请求完全由django-allauth package 处理,它应该检测令牌,将其保存到 session,重定向到“更改密码”页面,最后从 session 加载令牌。

问题:

单击来自 email(错误令牌)的链接时,密码重置 function 不起作用,但如果我将链接复制粘贴到 url 栏中或在检查元素模式下单击 href,它就会起作用。
注意:如果

  • 我在看到“Bad Token”后重新加载页面
  • 我从移动设备上的 email 应用程序中单击链接

错误:

当您单击 email 中的链接时,您会一直转到“更改密码”页面,但您会收到“令牌错误”错误,因为在 session 中找不到令牌。

通过电子邮件发送给用户的链接格式:

<a href="https://subdomain.url.com/ls/click?upn=DEcd6nIgEEAvb4Zt..." rel="noreferrer" safedirecturl="https://www.google.com/url?q=https://sudomain.url.com/...">link text</a>

为澄清起见,如果我将 href 和 safedirecturl 复制粘贴到 url 栏中,它们都可以正常工作

结论:

到目前为止,这些是我对问题原因的唯一猜测:

我将不胜感激任何输入,因为我在这一点上有点难过

由于在我的 django 设置中我有SESSION_COOKIE_SECURE = True ,我不得不将SESSION_COOKIE_SAMESITE = 'Strict'更改为SESSION_COOKIE_SAMESITE = 'Lax'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM