【发布时间】:2019-06-04 09:58:24
【问题描述】:
我有一个用 Django Rest 框架构建的 api 和一个用 Angular 构建的前端
对于重置密码功能,当用户点击重置密码时,他们应该在 Angular 的重置密码组件中提供email。然后通过submit action 命中reset_password 的POST 方法,在body 中加上email。
然后重置密码控制器应该使用这种格式base_url/reset_password/<token>向用户发送电子邮件
当用户点击这个网址时,他们应该被重定向到带有new password和confirm password的重置密码表单
问题是: 这个模板应该存储在哪里? Angular 组件还是 Django 模板?
这种情况的最佳做法是什么?
【问题讨论】:
-
创建重置密码组件并设置路由
resetpassword从 API 获取令牌创建 authGuard 以重置路由上设置的密码,如果重置令牌有效,则在重置页面上重定向,并在您的服务器中发送带有令牌的重置密码和更新它。 -
这取决于你的应用架构。你能提供代码吗?我的意思是,如果您使用 Angular 制作应用程序,我猜最终用户应该被重定向到您为其提供的特定页面/组件。不要与 django 模板混淆
-
我是指这个功能。 @RoiSadika 我可以让
/reset_password/<token>呈现一个存储在API 中的重置表单并为此功能服务器端执行所有操作,因为它将使用更少的请求,因为我可以验证token,如果失败我呈现@以 987654332@ 模板为例。 -
@MohamedHamza 重置密码功能应该是对 API 的调用,您还应该在 Angular 中提供服务来使用它。
标签: django angular django-rest-framework