Retrofit2.0中,每个请求之间是独立开的,这产生一个问题,也就是如何保持Session信息,更通俗易懂的说,就是如何保持登录状态,如果不做任何操作,那么不管登录多少次,都是无效的,无法进行其他权限操作。这里要提交到浏览器,浏览器是默认自动保存服务器发送过来的Session信息的,也就是默认保持Session信息的,只有当浏览器关闭,才会清除这些Session信息。
说到这里,你可能会说Session不是保存在服务器的吗?注意,这里用的是“保持”,换一种说法,就是让服务器知道这还是你,而不是新的用户连接。
Session 机制:
一般来说,服务器使用Session来判断用户是否登录,也就是:
当服务器与客户建立新的连接时,会创建一个会话Session,每个用户的Session的id都是不一样的,这是识别每个客户的一个id,当创建客户的Session后会放在响应体Response的头部信息中,具体位置为: