学习中心> Java面试疑难点解析 - 系统架构及项目设计> 正文

Java面试疑难点解析 - 系统架构及项目设计

25课时 |
1121人已学 |
免费
课程介绍

通过本节课的学习,能够掌握系统架构及项目设计,学习MVC设计、SSO处理流程、日志输出等知识

Cookie问题

1、Cookie是不是必须客户端天转完成之后才会被设置进去?

答:对于Cookie的设置,有两种模式:

  • WEB服务其自动设置:指的是第一次访问里面的任何一个页面,这个页面不管发不发生跳转,只要是用户访问的,只要是第一次访问,系统会自动设置一个Cookie;
  • 是手工的方式来设置Cookie,大部分开发者都会忽略一个关键性的问题,就是Cookie的路径问题。在默认情况下,假设说现在在“pages/back/msg”目录下,在这个目录下执行了respond.addCookie(c),这个时候的Cookie只会存在此目录下。

 

image.png

 

在这个状态下是必须要点刷新的,只有点了刷新才能去看件Cookie的数据,所以这个时候即使设置了Cookie,如果更改了目录,例如:“pages/back”下,那也无法取得Cookie。

因为路径不同所以就需要在设置Cookie的时候,如果确定要保存,除了设置时间之外,也需要设置路径,路径就设置为根目录。

根目录的获取方法:“request.getContextPayh()”。

 

2、如果在使用了response.setCookie之后有服务器跳转,在服务器跳转后去获取Cookie是不是就获取不到?

答:是可以获取到的,关键的问题是需要看设置的路径有没有“set/pass”,如果有就可以获取,这个是相当关键的问题。

 

3、在显示页显示不了,但是刷新一下就能找到Cookie。

答:Cookie是一定会跳转的,但是如果用服务器进行跳转,那第一次肯定是获取不到的,前提是要保证路径是对的,跳转之后需要手动刷新,才会获取数据。

 

image.png

 
 
我的学习进度
请登录后查看您的学习进度!
立即登录
本课程相关云产品