环境:tomcat7,windows10,jdk1.8,火狐浏览器。
如果直接访问servlet而servlet中没有获取session的操作即没有 HttpSession session = req.getSession(true);
则response响应中没有Set-Cookie设置 ,
即没有 Set-Cookie: JSESSIONID=65E1AD760F090A496016B193446B18C8; Path=/web; HttpOnly 操作,
但如果有session创建 则就会有Set-Cookie设置。
Jsp页面默认是开启session创建的 所有你访问一个Jsp页面就会有Set-Cookie设置。
Set-Cookie值中的HttpOnly 设置表示 只有后台服务器能够读取JSESSIONID,前端JS无法读取到JSESSIONID 防止XSS攻击。
Cookie的解析工作是tomcat来干的,Set-Cookie操作也是tomcat完成的工作,我们无法控制,我们能干预的位置就是session的创建和设置能容,cookie的内容设置,其他解析和组装工作由tomcat来完成。