【问题标题】:Reactjs frontend with PasswordResetView带有 PasswordResetView 的 Reactjs 前端
【发布时间】:2021-07-31 23:26:35
【问题描述】:

我目前正在为一个用 Django 后端、Reactjs 前端编写的项目开发重置密码功能(发送电子邮件)。我正在使用 Django 自己的 PasswordResetView 来实现此功能,它按预期工作。但是,我希望前端的页面向“reset_password/”发送 POST 请求,但我收到“POST http://localhost:8000/user/reset_password/403 (Forbidden)”错误消息。我不想使用模板来实现这个功能,而是用 Reactjs 编写的 Form(组件)在 localhost:3000 上运行。我怎样才能做到这一点?还是我应该尝试其他方法来重置密码功能?

这是尝试发布到后端的函数:

async resetPassword(email) {
const resetPasswordResponse = await client.post("reset_password/", {
  email: email,
});
return resetPasswordResponse;}

【问题讨论】:

    标签: reactjs django reset-password


    【解决方案1】:

    您应该提供有关后端代码结构的更多详细信息。使用“发送电子邮件功能”时采用的一般方法是通过 3 个步骤来管理您的问题,以避免使用 Django 模板:

    1. 在 Django 上有一条路由接受发布请求,该请求只负责发送电子邮件。

    2. 从 Django 链接生成的页面重定向到您的 react 应用程序的页面。还要小心转发重置密码所需的各种令牌/ID

    3. 最后在您重定向用户的页面内,您应该向后端发送一个发布请求,其中包含

    uid: '...',
    token: '...',
    password_1: '...',
    password_2: '...'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-12
      • 2018-04-21
      • 2021-05-02
      • 1970-01-01
      • 1970-01-01
      • 2017-03-04
      • 2016-11-21
      • 1970-01-01
      相关资源
      最近更新 更多