代码之家  ›  专栏  ›  技术社区  ›  Joey Yi Zhao

后端是否应处理电子邮件验证请求?

  •  3
  • Joey Yi Zhao  · 技术社区  · 7 年前

    我正在创建一个web应用程序,需要在用户在系统中注册后向其发送电子邮件验证。当用户收到验证电子邮件时,他们需要单击该电子邮件中的链接以验证其电子邮件地址。我的问题是链接是指向我的后端服务器还是指向我的前端。

    选项1: 如果我链接到我的后端,我需要实现一个GET-RESTFul服务来接收这个请求,因为浏览器无法发送POST请求。验证后,后端将响应重定向到浏览器以重定向到前端url。这可能不是RESTFul设计的最佳实践,因为它会更改我的数据库。

    选项2: 如果我链接到前端,我的前端需要解析url中的验证代码,并向后端发送post请求以执行验证工作。

    我不知道哪一个更好。有人给我一些建议吗?

    我的前端和后端是分开的。后端是用Python实现的,而前端是angularjs。它们通过Restful API进行通信。

    1 回复  |  直到 7 年前
        1
  •  4
  •   Greg Schmit    7 年前

    您的后端应该处理电子邮件验证。后端应该处理所有这些内容。假设URL调度程序位于前端,它将获取请求,然后将其传递到后端。

    常见的说法是将所有“业务逻辑”保留在后端。这确保了前端只专注于显示数据。

    您的AngularJS应用程序应该处理请求,调用Python后端(这样它就可以处理电子邮件验证的逻辑,看看它是否有效),然后响应应该返回到AngularJS应用程序,该应用程序应该为用户设置一个漂亮的响应,以指示电子邮件验证是否有效。