java 后台和前端域名不同的情况下 cookie该如何设置
时间: 2024-04-01 21:32:11 浏览: 47
解决java后台登录前后cookie不一致问题
当 Java 后台和前端域名不同时,由于浏览器的同源策略,前端默认不能访问后台设置的 Cookie。为了解决这个问题,需要在后台设置 Cookie 时,指定 Cookie 的 `domain` 属性为主域名,例如:
```
Cookie cookie = new Cookie("name", "value");
cookie.setDomain(".example.com"); // 设置主域名为 example.com
cookie.setPath("/"); // 设置路径为根路径
response.addCookie(cookie); // 将 Cookie 添加到响应中
```
在上述代码中,设置了 Cookie 的主域名为 `.example.com`,这样前端在向后台发送请求时,就可以携带该 Cookie 了。同时,路径也需要设置为根路径,否则只有在该路径下的请求才能携带该 Cookie。
需要注意的是,设置 Cookie 的主域名时,前面需要加一个点号,表示该主域名下的所有子域名都可以访问该 Cookie。例如,设置主域名为 `.example.com` 后,`www.example.com`、`api.example.com`、`blog.example.com` 等子域名都可以访问该 Cookie。但是,如果设置主域名为 `example.com`(去掉了点号),则只有 `example.com` 能访问该 Cookie,其他子域名无法访问。
阅读全文