正常的cookie只能在一個應用中共享,即:一個cookie只能由創建它的應用獲得。
可在同一應用服務器內共享cookie的方法:設置cookie.setPath("/"); (假設:本機tomcat/webapp下面有兩個應用:webapp_a和webapp_b)
1. 原來在webapp_a下面設置的cookie,在webapp_b下面獲取不到,path默認是產生cookie的應用的路徑。
2. 若在webapp_a下面設置cookie的時候,增加一條cookie.setPath("/");或者cookie.setPath("/webapp_b/");就可以在webapp_b下面獲取到webapp_a設置的cookie了。
3. 此處的參數,是相對於應用服務器存放應用的文件夾的根目錄而言的(比如tomcat下面的webapp),因此cookie.setPath("/");之后,可以在webapp文件夾下的所有應用共享cookie,而cookie.setPath("/webapp_b/");或者cookie.setPath("/webapp_b");是指webapp_a應用設置的cookie只能在webapp_b應用下的獲得,即便是產生這個cookie的webapp_a應用也不可以。
4. 設置cookie.setPath("/webapp_b/jsp")的時候,只有在webapp_b/jsp下面可以獲得cookie,在webapp_b下面但是不在jsp文件夾內,不能獲得cookie。
5. 有多條cookie.setPath("XXX");語句的時候,以最后一條為准。