【问题标题】:forgot password with django and graphql?忘记了 django 和 graphql 的密码?
【发布时间】:2020-02-07 11:12:48
【问题描述】:

我使用 django 作为 graphql 的支持,我试图实现忘记密码,并更改密码,我使用 django-graphql-jwt 登录,一切正常,但我没有看到任何关于忘记的文档graphql 的密码。

【问题讨论】:

  • 到目前为止你有什么尝试?
  • 带有查询和突变的 jwt 登录工作正常。@thatrockbottomprogrammer
  • 生成可以更改密码的令牌。使用用户 ID 将其存储在 Redis 等临时存储中,并反向查找记录以更改密码
  • 我知道如何休息,但在 graphql 我不知道如何生成忘记密码的链接。
  • @AJAIAU,你有什么发现吗?

标签: python django graphql


【解决方案1】:

您可以使用django-graphql-auth

它具有 send password reset emailpassword reset 的内置突变。

请求密码重置邮件

mutation {
  sendPasswordResetEmail(
    email: "skywalker@email.com"
  ) {
    success,
    errors
  }
}

用户收到带有链接的电子邮件

该链接包含您在客户端用于发送突变的令牌:

mutation {
  passwordReset(
    token: "1eyJ1c2VybmFtZSI6InNreXdhbGtlciIsImFjdGlvbiI6InBhc3N3b3JkX3Jlc2V0In0:1itExL:op0roJi-ZbO9cszNEQMs5mX3c6s",
    newPassword1: "supersecretpassword",
    newPassword2: "supersecretpassword"
  ) {
    success,
    errors
  }
}

免责声明:我是作者

【讨论】:

  • 试过用它,但我似乎无法发送电子邮件
猜你喜欢
  • 2013-05-17
  • 2018-03-11
  • 1970-01-01
  • 2012-04-21
  • 1970-01-01
  • 2015-05-17
  • 2011-10-19
  • 2019-10-01
  • 2022-07-23
相关资源
最近更新 更多