**
客户端禁了cookie后,session也失效的问题
**
大家可能会在初学servlet的时候有这么一个疑问,session和cookie明明是两个不同的规范,为什么客户端禁止了cookie对session也会产生失效。
因为,服务器在创建session后,需要将sessionID传递给客户端,传递给客户端的方法有两种,一是URL重写机制,二是使用cookie传递。
如果客户端禁止了cookie,而你的代码中又没有实现URL重写,那么,你的sessionID是无法进行传送的,自然也就是session失效了。
**解决办法:**对所有的链接和重定向使用encodeURL()或encodeRedictURL()方法进行URL重定向,这时便相当于给了sessionID两条路,cookie禁用不会导致重定向的路走不通,就可以正常传递sessionID了。