java设置跨域后 前端通过域名访问无法java后台无法获取cookie
时间: 2023-08-12 15:07:26 浏览: 184
用script跳转方式主动跨域获取cookie或session(并非网上铺天盖地的主动设置法)
4星 · 用户满意度95%
如果您已经按照上面的方法设置了跨域访问和允许携带 Cookie,但是在前端通过域名访问时 Java 后台仍然无法获取 Cookie,可能是因为前端访问时使用的是域名,而非 IP 地址。
在跨域请求中,浏览器会将请求头中的 Cookie 字段发送到目标服务器,但是需要注意的是,如果请求中使用的是域名而非 IP 地址,浏览器会自动将 Cookie 中的 Domain 属性设置为当前访问的域名,这可能会导致后台无法获取 Cookie。
为了解决这个问题,您可以在设置 Cookie 时将 Domain 属性指定为 IP 地址,而非域名。例如:
```
Cookie cookie = new Cookie("name", "value");
cookie.setDomain("192.168.1.10"); // 指定为后台服务器的 IP 地址
response.addCookie(cookie);
```
这样,在前端通过域名访问时,浏览器仍然会将 Cookie 发送到后台服务器,并且后台服务器也能够正常获取 Cookie。
需要注意的是,如果您的后台服务器是在多个 IP 地址上运行的,或者您的应用程序需要在不同的环境中运行,可能需要动态地设置 Cookie 的 Domain 属性,以确保能够正常获取 Cookie。
阅读全文