笔者开发一个java web项目,低版本的chrome(74以下)可以正常登录,升级到chrome74不能正常登录,登录成功后url会携带一个jsessionid=xxxxxx。

登录成功那个页面有session,可以通过session.getAttribute获取属性值。其他页面就没有session了。

如果把复制到访问页面后面。例如 http://localhost/111.jsp?jsessionid=xxxxxx也能正常访问。可是tomcat给我的ssession会话凭证的

cookie是JSESSIONID,和jessionid根本就不是一回事。

在老外网站看到有人讨论,说chrome72,问题类似。没有降到72测试。直接升级到chrome76解决问题了。

症状图片

/toMyProfile.do;jsessionid=DE15789BF54EC8750DB5394BD8A99FA3

经笔者测试,上述问题消失,偶尔间又恢复。

最终解决办法:

欺骗浏览器,手工添加JSESSIONID

    /**
* 登录
* @param user
* @param model
* @return
*/
@RequestMapping(value = "login.do",method = RequestMethod.POST)
public String login(User user, Model model, HttpSession session, HttpServletResponse response){
Map<String,Object> map = loginService.login(user);
if(map.get("status").equals("yes")){ Integer uid = (Integer) map.get("uid");
String headUrl = (String) map.get("headUrl"); session.setAttribute("uid",uid);
session.setAttribute("headUrl",headUrl); String sessionId = session.getId();
Cookie cookie = new Cookie("JSESSIONID", sessionId);
cookie.setMaxAge(Integer.MAX_VALUE);
response.addCookie(cookie); return "redirect:toMyProfile.do";
}else {
model.addAttribute("email",user.getEmail());
model.addAttribute("error",map.get("error"));
return "login";
}
}

参考来源:jsessionid所引起的问题 和解决

升级chrome浏览器导致网站登录功能不能用的更多相关文章

  1. 转:Chrome浏览器查看网站登录 Cookie 信息的方法

    当我们使用自动签到等程序的时候一般都要用到网站Cookie,我们可以借助浏览器的扩展来获取Cookie信息,但其实通过浏览器本身的功能就可以查看Cookie信息.以Chrome类浏览器为例有以下三种方 ...

  2. 非正常卸载Chrome浏览器导致无法重新安装

    昨晚在使用selenium的时候,Chrome浏览器和Chromedriver.exe不兼容,前几天使用的时候都没问题,查看浏览器版本后发现浏览器已经自动升级为67版本(我之前安装的是61版本). 于 ...

  3. chrome 浏览器帐号登录不来,如何解决自己的书签

    装系统前把 该目录下  C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default    的  Bookmarks 复制出 ...

  4. Chrome浏览器桌面通知提示功能使用

    http://www.cnblogs.com/meteoric_cry/archive/2012/03/31/2426256.html

  5. chrome浏览器无法开启同步功能 request cancel

    解决办法 添加代理规则*.googleapis.com

  6. Chrome浏览器插件开发-淘宝自动登录

    浏览器插件的介绍 Chrome浏览器插件开发的准备工作 manifest.json配置介绍 页面如何注入scripts文件 一. 浏览器插件的介绍 浏览器插件是一种遵循一定规范的应用程序接口编写出来的 ...

  7. 如何使用chrome浏览器进行js调试找出元素绑定的点击事件

    大家有没有遇到这样的一个问题,我们在分析一些大型电子商务平台的Web前端脚本时,想找到一个元素绑定的点击事件,并不是那么容易,因为有些前端脚本封装的比较隐蔽,甚至有些加密脚本,用传统的查找元素ID.或 ...

  8. Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试 Postman 使用方法详解

    Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试   问题引入:做接口测试时,有依赖关系的接口往往不好测试( ...

  9. chrome禁止三方cookie,网站登录不了怎么办

    背景 新版chrome(80+)浏览器默认屏蔽所有三方cookie已经不是什么新闻了,具体原因这里不去深究,有大量相关文章介绍,由于目前许多网站都依赖三方cookie,因此该特性的推出还是造成了一些的 ...

随机推荐

  1. vue sample

    <template> <section> <header class="top_tips"> <span class="num_ ...

  2. 查看python和NumPy版本和安装路径

    记录查看Python和NumPy版本以及路径的几条命令 # 查看Python版本及路径 python -V python -c "import sys;print(sys.executabl ...

  3. Paper Reading:DetNet

    论文:DetNet: A Backbone network for Object Detection 发表时间:2018 发表作者:(Face++)Chao Peng, Gang Yu (Tsingh ...

  4. hibernate的详解

    一,环境的搭建 1)创建maven项目 2)导入依赖的jar包.pom.xml和创建实体类User <?xml version="1.0" encoding="UT ...

  5. php 的一个异常处理程序

    <?php//exceptionHandle.php xiecongwen 20140620 //define('DEBUG',true); /** * Display all errors w ...

  6. sql prompt工具

    SQL Prompt是一款拥有SQL智能提示功能和格式化Sql代码插件.可用于的SQL Server和VS. SQL Prompt能根据数据库的对象名称,语法和用户编写的代码片段自动进行检索,智能的为 ...

  7. ACM-ICPC 2018 青岛赛区现场赛 K. Airdrop && ZOJ 4068 (暴力)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4068 题意:吃鸡游戏简化为二维平面上有 n 个人 (xi,yi) ...

  8. 设置了msconfig处理器个数和内存开不了机终极解决办法

    1.进入 启动修复 的 命令提示符(最好是使用有管理员权限的,不过普通用户我也每试过), 使用 bcdedit 命令来查看. 2.可以查看到你的启动参数. 确认 truncatememory 是否为 ...

  9. zhengrui集训D1-D5笔记

    Day_1 计数 它咕掉了 Day_1 序列数据结构 它咕掉了 Day_2 线性代数 高斯消元\Large{高斯消元}高斯消元 普通版:略 模质数:求逆 模合数:exgcd 逆矩阵\Large{逆矩阵 ...

  10. 一个奇怪的方法解决华为ENSP模拟器路由器启动后命令行一直“#”的问题

    今天打开ensp准备练习一下,设备启动以后发现端口一直是红色.于是打开路由器命令行,发现一直输出“#”号.百度后几乎试了所有方法,什么删除网卡再新建.重启计时器.配置ip地址..都不行. 可是我昨天用 ...