我正在使用react和Microsoft SQL Server制作一个全栈网站,然而,我被登录页面的功能卡住了。
要做到这一点的最佳实践是什么?
到目前为止,我在DB中有一个简单的登录表单和一个用户表。我的想法(对于这个开发的第一次迭代)是对users表执行一个简单的查询,以查看电子邮件和密码是否存在。
是否可以根据用户是否存在于表中来限制react-router-dom打开页面?我知道需要JWT身份验证?
我只是在寻找如何像这样的登录表单应该工作的指针。
发布于 2020-01-02 19:49:44
大多数登录功能都会有一个登录表单,要求输入电子邮件和密码。您可以按照以下步骤进行操作:
1.)后台需要检查用户名密码组合是否存在。
2.)如果存在,则使用userId生成JSON web令牌并将其发送到前端。将jwt存储在localStorage/sessionStorage/cookies中。
3.)对于每个HTTP请求,jwt都会在请求头中发送到后端。
4.)您可以从jwt中提取userId。然后检查用户是否有权限在后台进行特定操作。您还可以限制用户使用userId查看某些页面。
5.)成功登录后,不需要在前台显示登录/注册等页面。您可以基于jwt的本地存储在react中实现逻辑。
希望这能有所帮助。
https://stackoverflow.com/questions/59562741
复制相似问题