详解token已过期含义及解决方法 蝙蝠软件token已过期啥意思

对于初学者来说,Token和Session的使用难免会受限于困难,知道开发过程中有这个东西,却不知道为什么要用?我不知道它的原理 。今天我就带大家来分析一下这个东西 。
首先我们来解释一下他的意思:
1.Token介绍:Token是客户端频繁向服务器请求数据,服务器频繁查询比较数据库中的用户名和密码,判断用户名和密码是否正确,并给出相应的提示 。在这种背景下,Token应运而生 。
2.Token的定义:Token是服务器生成的一串字符串,作为客户端请求的令牌 。第一次登录时,服务器生成一个令牌并将其返回给客户端 。后来,客户端只需要带这个令牌来请求数据,而不必再次带用户名和密码 。
3.使用Token的目的:Token的目的是减轻服务器的压力,减少频繁的数据库查询,使服务器更加健壮 。
理解了Token的含义后,我们就能更清楚地知道我们为什么要使用它 。
二、Token怎么用?
这是本文的重点,在这里我将介绍两种常见的方式 。
1.使用设备号/设备mac地址作为令牌(推荐)
客户端:客户端在登录时获取设备的设备号/mac地址,并将其作为参数传递给服务器 。
服务器:收到这个参数后,服务器会用一个变量来接收,并作为令牌存储在数据库中,在会话中设置令牌 。每次客户端请求,都要统一拦截,将客户端传递的令牌与服务器的会话中的令牌进行比较 。如果是一样的,就放行;如果不一样,就会被拒绝 。
分析:此时,客户端和服务器统一了一个唯一的令牌,并确保每个设备都有一个唯一的会话 。这种方法的缺点是客户端需要将设备号/mac地址作为参数传递,服务器需要保存 。好处是客户端不需要再次登录,但是登录一次就可以一直使用 。至于超时的问题,有服务器来处理 。怎么处理?如果服务器的令牌超时,服务器只需要查询客户端传入数据库的令牌,同时赋给变量Token,这样令牌的超时就会重新计时 。
2.使用会话值作为令牌 。
客户端:客户端只需要用用户名和密码登录 。
客户端:客户端收到用户名和密码后,判断是否正确,将本地获取sessionID作为令牌返回给客户端,以后客户端只需要带上请求的数据即可 。
分析:这种方式的优点是方便,不需要存储数据,缺点是当会话到期时,客户端必须重新登录才能访问数据 。
三 。使用中的问题及解决方法?
刚才我们已经介绍了两种轻松使用Token的方法,但是在使用Token的过程中还是会出现各种各样的问题 。在第一种token方法中,我们隐藏了一个问题,就是当网络不好或者并发请求时,数据会重复提交 。
【详解token已过期含义及解决方法 蝙蝠软件token已过期啥意思】总结:以上是个人对开发中Token和session使用的总结 。如有不当描述请指正,我会及时改正并感谢 。我知道有更多更好的方法来使用它 。我来这里只是抛砖引玉 。希望大家提出你的使用方法,我们可以一起讨论,学习,进步 。同时也可以给像我这样对这方面认识比较薄弱的朋友提供一些帮助 。谢谢你 。


    推荐阅读