如何深刻理解JavaWeb中session和cookie?

如题所述

http是一种无状态的协议,所谓的无状态是指同一个客户端连续的请求,对于服务端来说,是区分不了,你是同一个客户端的。cookie跟session就是为了解决http无状态的问题而存在的.客户端第一次请求服务器,服务器会在响应头里有Set-Cookie(大概是这样)响应头,cookie是一个键值对(tomcat里session的名字是jsessionid,没记错的话,不同的服务器这个不一样),在以后的每次请求里,客户端的请求在请求头里都会有cookis这个请求头,服务器会根据cookie的值找到对应的session(类似于从HashMap这样的结构里拿到session,session怎么存储就不展开了).整体流程就是这样,其实就是每次请求都传递一个固定的值,根据这个值来确定是同一个用户,一般一些app的接口里不会用cookie而是用token,也就是这么个原理。留两个问题吧,有些页面只能在微信端打开,怎么在PC端的浏览器打开,第二个,有种Web攻击叫跨站脚本攻击,里面就用了cookie的原理,(有些专业术语可能写错了)去了解下上面说的两个问题

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜