TA的每日心情 | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
关于Cookie的路径及Cookie的获取问题?
5 x. [0 v- C) \$ H; N P
* H! N- f5 J- E: J1 p问题描述:
' K' x& i) ~/ O; {% l7 K. aCookiec1=newCookie("cname","c1");+ [9 U. R* I o/ U; }% S! X
c1.setPath("/MyApp");7 A+ ?" I+ ~7 ^2 s" \# w
c1.setMaxAge(Integer.MAX_VALUE);
% I% J7 k! l6 G7 H- p) ^/ eresponse.addCookie(c1);7 z% D, \: S4 w' S
Cookiec2=newCookie("cname","c2");3 s( _) H4 ~" [
c2.setPath("/MyApp/servlet");
+ N/ K! x9 k( a- g! r0 i7 Xc2.setMaxAge(Integer.MAX_VALUE);8 w$ K+ I3 Z- G5 z* h. U
response.addCookie(c2);/ K+ F& ~2 ]# G; M) I8 o- [
4 u0 q4 B1 I4 n |% b
3 b& w/ }4 y5 [# G' t
以上代码表明向客户端写了2个重名的Cookie,但path属性不一样。- |3 B! D7 ^% W* Q1 J: [1 ~8 e
请问浏览器将带哪个Cookie给服务器?, o% d- i0 L2 [. J( n7 y0 w
答:这个必须根据客户端访问的服务器资源的路径来决定。
" U; L% x, e$ c: N O如果用户访问的某个资源的路径为/MyApp/servlet/SomeServlet,
- @' |5 Q) s5 g1 b. P那么这2个cookie浏览器都会带给服务器;如果用户访问的资源的路径为/Myapp/1.jsp,
; v" p k; g9 [7 l9 Q1 a那么浏览器只会带第1个cookie过来。
) m( M1 _4 ^9 ]; U+ Y$ Z! c5 F! s
1 T* W, f+ X2 C( P |
|