我正在创建一个网络应用程序,需要在用户在系统中注册后向他们发送电子邮件验证。当用户收到验证电子邮件时,他们需要单击该电子邮件中的链接来验证他们的电子邮件地址。我的问题是链接是指向我的后端服务器还是指向我的前端。
选项 1: 如果我链接到我的后端,我需要实现一个 GET RESTFul 服务来接收这个请求,因为浏览器无法发送 POST 请求。验证通过后,后台会响应一个重定向到浏览器,重定向到前端url。就 RESTFul 设计而言,这可能不是最佳实践,因为它在我的数据库中进行了更改。
选项 2: 如果我链接到前端,我的前端需要解析url中的验证码,然后向后端发送一个post请求来做验证工作。
我不确定哪个更好。有没有人给我一些建议?
我的前端和后端是分开的。后端使用 Python 实现,前端使用 angularjs。他们通过 Restful API 进行通信。
最佳答案
您的后端应处理电子邮件验证。后端应该处理所有这些东西。假设您的 URL 调度程序在您的前端,它会获取请求,然后将其传递给后端。
常用的说法是将所有“业务逻辑”保留在后端。这可确保您的前端仅专注于呈现数据。
你的 AngularJS 应用程序应该处理请求,调用 Python 后端(这样它就可以执行处理电子邮件验证的逻辑以查看它是否有效),然后响应应该返回给 AngularJS应为用户设置一个美观的响应格式的应用程序,以指示电子邮件验证是否有效。
关于restful-authentication - 后端应该处理电子邮件验证请求吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48144617/