项目中需要处理用户单点登录的问题,由于是集成到另一个项目上,所以,验证需要在另一个项目进行验证,这样就少不了有跨域的问题。
每次验证成功后,跳转时就会出现SESSION被重新创建的情况。
后面,定义了一个SESSION的全局变量,貌似可以解决问题。但过滤器都是单例多线程的,于是又产生新的问题。全局变量的SESSON做法还是不可取。
最后,通过同事帮忙才知道原来加句话就可以了:
response.addHeader("P3P", "CP=CAO PSA OUR"); //允许第三方Cookie才可以使用2个域名
总结:
1. 过滤器SESSION不能定义成全局变量。
2. 跨域设置SESSION,需要允许第三方COOKIE