背景
最近在做sso单点登录,sso登录成功后后端需要把token和用户信息以cookie的方式传送给前端,由于项目是前后端分离的,这就涉及到了前后端跨域共享cookie的问题,下面就说说我在项目中的解决思路。
解决思路一 —— 通过二级域名共享cookie
一开始在网上看了很多的跨域共享cookie的方法,使用最多的是jsonp和cors这两种,今天我介绍的是另外一种---基于二级域名共享cookie,原因是简单...(注意:使用二级域名共享cookie有一个限制条件,就是两个域名的二级域名必须相同)
二级域名
先来介绍一下什么是二级域名,拿www.baidu.com做例子,com是这个域名的一级域名,baidu.com是这个域名的二级域名,www.baidu.com是这个域名的三级域名,以此类推...
二级域名共享就是两个域名的的二级域名必须相同,只有符合这个条件它们之间的cookie才能共享。(例如:a.XXX.test.io和b.test.io,这两个域名的二级域名就是相同的)
代码实现(基于JDK1.8)
//添加cookie cookieName
Cookie cookieName = new Cookie("user_name", userName);
cookieName.setDomain("test.io"); //通过二级域名共享cookie
cookieName.setPath("/");
cookieName.setMaxAge(Integer.MAX_VALUE);
cookieName.setSecure(false);
respo