我正在研究RESTFUL系统,我想创建基于电子邮件的登录系统,我需要一些建议,我想知道我应该如何分离控制器和我需要多少个控制器。
以下是我的情景:
1 - 用户在客户端输入他/她的电子邮件
2 - RESTFUL应用程序接收电子邮件
3 - RESTFUL应用程序在数据库中查找电子邮件(如果存在),更新令牌并将此令牌发送到用户电子邮件,如果数据库中不存在电子邮件,应用程序将电子邮件插入数据库并为此电子邮件创建令牌,然后应用程序应发送此令牌用户的电子邮件。
4 - 用户收到电子邮件并单击授权链接登录。
5 - 如果一切正常,RESTFUL应用程序处理此链接和grunt用户
答案 0 :(得分:1)
你应该有两个端点,即两个控制器:
第一个终点:/ login Login控制器将处理GET和POST请求。
因此对于GET,它会将客户端视图返回给用户,并在表单元素中显示电子邮件。 当用户提交该表单时,表单将通过POST请求返回登录控制器。它将在这里,当您在第3点执行操作时。[您可以选择使用单独的实用程序文件来执行与DB相关的功能并发送邮件,因为不希望在控制器主体中进行冗长的操作]
第二个终点:/授权 这将是您发送给用户的链接。让这个授权控制器只处理GET请求。 因此,当用户访问此链接时,它应该首先验证用户并最终哼哼他并返回确认消息或欢迎消息。
希望这有帮助。