前端-单点登录中cookie中domain的思考
疑问:cookie中的domain属性,为啥有的前面带.点,有的不带点,截图如下:
分析过程:
我们这个项目是单点登录种的cookie,别的项目组同学种的cookie不同,那咋肯定要让他们和咋一样,然后开始蛇皮操作
首先上述截图中看到的cookie都是在一个主域下,那么出现这样问题的原因可能就是域名和子域名的区别,可能是别的项目组同学存cookie的时候和我们的路径不一致导致,根据这条信息开始找资料
文献参考:
domain可以允许的属性值总结如下:
(1 如果显式规定,属性值只能是当前域或者其父域,此时浏览器会自动给域或者父域前面加点。
(2 如果省略此属性,那么domain属性就是当前页面所在的域(前面不会自动加点)。
domain属性规定域的作用范围:
(1 如果属性值最终结果带有点,那么作用范围是最终结果这个域本身或者其所有子域。
(2 如果属性值最终结果没有点,那么作用范围是最终结果这个域本身。
看了上面的解释问题基本就很清晰了,没有带. 点的就是在设置cookie属性的时候,没有显示规定domain所在的域。
解决总结:
最后就这么一个意思
(1 如果域不同,同name的Cookie不会被覆盖。
(2 只要显式规定domain值,必定会在域前面添加点。
(3 如果带点,有效范围就是属性值所规定的域和此域的子域。