php用token做登录认证逻辑

1.前端传账号密码给后端

2.后端将账号密码作处理加密生成token,并返回给前端

3.前端将token存入缓存,在每次请求时,在header或url中将token传给后端

4.将前端传来的token与数据库账号密码生成的token作比对,相等则成功。

实现登录状态保持与身份认证的方式通常有两种:session结合数据库、token。

两者相比较,token有较多优点。

① token可以存储在任何位置(比如cookie或local storage)

② token更容易跨域

③ token过期时可以通过刷新token,让用户一直保持有效登录

④ 如果api在不同终端上,token更方便安全

其过程大致如下:

① 用户首次登录,将输入的账号和密码提交给服务器

② 服务器对输入内容进行校验,若账号和密码匹配则验证通过,登录成功,并生成一个token值,将其保存到数据库,并返回给客户端

③ 客户端拿到返回的token值将其保存在本地(如cookie/local storage),作为公共参数,以后每次请求服务器时都携带该token(放在响应头里),提交给服务器进行校验

④ 服务器接收到请求后,首先验证是否携带token,若携带则取出请求头里的token值与数据库存储的token进行匹配校验,若token值相同则登录成功,且当前正处于登录状态,此时正常返回数据,让app显示数据;若不存在或两个值不一致,则说明原来的登录已经失效,此时返回错误状态码,提示用户跳转至登录界面重新登录

⑤ 注意:用户每进行一次登录,登录成功后服务器都会更新一个token新值返回给客户端
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/zhanghao143lina/article/details/113398527

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值