Cookie的默认存储路径以及后端如何设置

问题场景

最近在写一个前后端分离的项目,需要跨域,前端开发同学遇到一个问题一直报错,本质上就是后端返回的cookie中的sessionID在前端发送http请求时无法被请求自动携带,每次htttpRequest都被后端识别为一个新的session,返回新的sessionId,无法正常通过鉴权。

解决方案

这个项目是前端通过vue配置的跨域,

配置跨域的根路径一定要和后端的根路径想同,如此后端返回的sessionId才能被正常使用。

原因如下:

  1. 想要使用cookie除了有域名,端口,协议必须一致之外,还需要满足cookie的path必须和项目根路径相同,可以查看当前网页中的cookie的path如下:

    上图中路径为一个/,代表cookie能被所有当前协议域名端口都相同的任意路径的请求使用,比如:Localhost:8080/**
    有路径的例子:

    这个cookie就只能被以下请求路径使用:
    localhost:8080/my_chatroom/
  2. 修改后端上下文路径可以修改cookie的path
    JSESSIONID cookie的默认Path通常是Web应用的上下文路径(context path)。这意味着如果你将你的Spring MVC应用部署到名为/myapp的上下文路径下,那么JSESSIONID cookie的Path也会自动设置为/myapp。因此,通过更改Web应用的上下文路径,你可以间接地更改JSESSIONID cookie的Path。
相关推荐
Q_970956396 分钟前
java+vue+SpringBoo校园失物招领网站(程序+数据库+报告+部署教程+答辩指导)
java·数据库·vue.js
Wyc7240914 分钟前
Maven
java·数据库·maven
程序猿小D17 分钟前
[附源码+数据库+毕业论文]基于Spring+MyBatis+MySQL+Maven+jsp实现的电影小说网站管理系统,推荐!
java·数据库·mysql·spring·毕业设计·ssm框架·电影小说网站
CodeWithMe1 小时前
【Note】《深入理解Linux内核》 Chapter 15 :深入理解 Linux 页缓存
linux·spring·缓存
木头没有瓜2 小时前
idea离线安装插件
java·ide·intellij-idea
llwszx2 小时前
Spring中DelayQueue深度解析:从原理到实战(附结构图解析)
java·后端·spring·delayqueue·延迟任务
述雾学java2 小时前
Spring Cloud Feign 整合 Sentinel 实现服务降级与熔断保护
java·spring cloud·sentinel
保持学习ing2 小时前
苍穹外卖day3--公共字段填充+新增菜品
java·阿里云·实战·springboot·前后端·外卖项目·阿里云文件存储
77qqqiqi2 小时前
正则表达式
java·后端·正则表达式
厦门德仔3 小时前
【WPF】WPF(样式)
android·java·wpf