为了账号安全,请及时绑定邮箱和手机立即绑定

spring boot中一直刷新一个请求得到的sessionid会变化

spring boot中一直刷新一个请求得到的sessionid会变化

侃侃尔雅 2019-04-10 18:15:49
controller中的代码:@RequestMapping(value = "/sessions", method = RequestMethod.GET)public Object sessions(HttpServletRequest request) {Map sessionIdPortMap = new HashMap();// 获取session信息sessionIdPortMap.put("sessionId:", request.getSession().getId());sessionIdPortMap.put("服务器端口:", request.getServerPort());return sessionIdPortMap;}请求: http://localhost:8004/sessions两次请求一样,sessionId不同:{"sessionId:": "c8636f78-6a04-48f7-a9b6-c452108d74f3","服务器端口:": 8004}{"sessionId:": "9cee7886-b85f-4078-9310-b1b580403e7d","服务器端口:": 8004}这种配置代码也配了,没用:@Configurationpublic class WebMvcConfig extends WebMvcConfigurerAdapter {@Override public void addCorsMappings(CorsRegistry registry) {     System.out.println("我是MyWebConfig跨域");     // 设置允许跨域的路径     registry.addMapping("/**")             // 设置允许跨域请求的域名             .allowedOrigins("*")// 设置跨域访问的域名,如果是*,默认都可以访问。             // 是否允许证书 不再默认开启             .allowCredentials(true)// 设置是否允许客户端发送cookie信息。默认是false             // 设置允许的方法             .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")             // 跨域允许时间             .maxAge(3600); }}哪位大神可以解决呀!!
查看完整描述

6 回答

?
长风秋雁

TA贡献1757条经验 获得超7个赞

问题刚刚自己找到问题解决了,关键代码注释掉了,真的是自己给自己挖坑,不是跨域的问题


查看完整回答
反对 回复 2019-05-16
?
跃然一笑

TA贡献1826条经验 获得超6个赞

  •  Request URL: http://localhost8004/sessions Request Method: GET Status Code: 200 Remote Address: [::1]:8004 Referrer Policy: no-referrer-when-downgrade Access-Control-Allow-Credentials: true Access-Control-Allow-Headers: x-requested-with Access-Control-Allow-Methods: HEAD, POST, GET, OPTIONS, DELETE, PUT Access-Control-Max-Age: 3600 Content-Type: application/json;charset=UTF-8 Date: Tue, 05 Mar 2019 12:00:05 GMT Transfer-Encoding: chunked x-auth-token: aaaba581-8e19-4599-bc30-cfdc1a3f8195 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 Accept-Encoding: gzip, deflate, br Accept-Language: zh-CN,zh;q=0.9 Cache-Control: max-age=0 Connection: keep-alive Host: localhost:8004 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36


查看完整回答
反对 回复 2019-05-16
?
杨魅力

TA贡献1811条经验 获得超6个赞

检查一下浏览器请求时,有没有带上session请求。没有的话,就还是跨域问题


查看完整回答
反对 回复 2019-05-16
?
函数式编程

TA贡献1807条经验 获得超9个赞

1、sessionId不同,是因为“没有就创建一个新的”机制。
2、检查浏览器cookie里有没sessionId?
3、查spring boot是否依赖spring session?过滤器是否开启cookie获取sessionId?(默认是,就是不知道该架构改了没)

查看完整回答
反对 回复 2019-05-16
?
MMTTMM

TA贡献1869条经验 获得超4个赞

request中的session是需要自己手动创建的,和spring boot 没有关系,你是不是想用spring session?


查看完整回答
反对 回复 2019-05-16
  • 6 回答
  • 0 关注
  • 5527 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号