![Android APP开发实战:从规划到上线全程详解](https://wfqqreader-1252317822.image.myqcloud.com/cover/677/22655677/b_22655677.jpg)
上QQ阅读APP看书,第一时间看更新
6.3 Session简介
6.3.1 Session
Session在网络应用中称为“会话控制”。Session对象存储特定用户会话所需的属性及配置信息,如登录信息等(Session是一个容器,可以存放会话过程中的任何对象)。
对于Cookie来说,假设要验证用户是否登录,就必须在Cookie中保存用户名和密码,并在每次请求的时候进行验证。而Session是存储在服务器端的,远程用户没办法修改Session文件的内容,因此可以单纯存储一个变量来判断是否登录,首次验证通过后设置变量值为true,以后判断该值是否为true,假如不是则转入登录界面,这样可以减少每次为了验证Cookie而传递密码的不安全性了。
6.3.2 SessionID
SessionID是服务器给客户端的一个编号。当一台服务器运行时,可能有若干个用户访问这台服务器上的网站,当每个用户首次与这台服务器建立连接时,就与这个服务器建立了一个Session,同时服务器会自动为其分配一个SessionID,用以标识这个用户的唯一身份。这个SessionID是由服务器随机产生的一个由24个字符组成的字符串。
服务器要鉴别Session,至少需要从客户端传来一个SessionID, SessionID通常存于Cookie中,客户端向服务器发送请求时会将用户的SessionID附加在Cookie中。Session的创建和使用总在服务器端,客户端真正拿到的是SessionID。