【问题标题】:Reset Password Functionality重置密码功能
【发布时间】:2019-06-04 09:58:24
【问题描述】:

我有一个用 Django Rest 框架构建的 api 和一个用 Angular 构建的前端

对于重置密码功能,当用户点击重置密码时,他们应该在 Angular 的重置密码组件中提供email。然后通过submit action 命中reset_passwordPOST 方法,在body 中加上email

然后重置密码控制器应该使用这种格式base_url/reset_password/<token>向用户发送电子邮件

当用户点击这个网址时,他们应该被重定向到带有new passwordconfirm password的重置密码表单

问题是: 这个模板应该存储在哪里? Angular 组件还是 Django 模板?

这种情况的最佳做法是什么?

【问题讨论】:

  • 创建重置密码组件并设置路由resetpassword 从 API 获取令牌创建 authGuard 以重置路由上设置的密码,如果重置令牌有效,则在重置页面上重定向,并在您的服务器中发送带有令牌的重置密码和更新它。
  • 这取决于你的应用架构。你能提供代码吗?我的意思是,如果您使用 Angular 制作应用程序,我猜最终用户应该被重定向到您为其提供的特定页面/组件。不要与 django 模板混淆
  • 我是指这个功能。 @RoiSadika 我可以让/reset_password/<token> 呈现一个存储在API 中的重置表单并为此功能服务器端执行所有操作,因为它将使用更少的请求,因为我可以验证token,如果失败我呈现@以 987654332@ 模板为例。
  • @MohamedHamza 重置密码功能应该是对 API 的调用,您还应该在 Angular 中提供服务来使用它。

标签: django angular django-rest-framework


【解决方案1】:

我会选择 Angular 组件 选项,因为当你有一个安静的后端和一个单页应用程序时,UI 和数据之间的分离作用。

【讨论】:

    猜你喜欢
    • 2013-05-17
    • 1970-01-01
    • 2013-09-12
    • 2020-07-05
    • 1970-01-01
    • 2019-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多