django系统登录突然提示验证码过期问题解决办法,The set-cookie didn’t specify a “SameSite” attritube…
详细分析请参考:https://blog.csdn.net/weixin_42681866/article/details/104786293?utm_medium=distribute.pc_relevant_bbs_down.none-task-blog-baidujs-1.nonecase&depth_1-utm_source=distribute.pc_relevant_bbs_down.none-task-blog-baidujs-1.nonecase
问题描述:
django开发的平台一直使用chrome登录正常,突然有部分用户的chrome登录反复提示验证码过期,有些用户可以正常登录。
问题定位:查看登录代码发现,request.session中的'verify_code字段未空,即request保存session为空所致。
登录不了的chrom浏览器有提示这么一段话:
The set-cookie didn’t specify a “SameSite” attritube…
SameSite是防止csrf跨站攻击而出的,具体有三种模式(https://www.cnblogs.com/ziyunfei/p/5637945.html),分别是strict、lax、None,依次是严格、宽松、禁用。chrom于2020-02-04上了强制性的samesite(chrom 80版本)导致的。
解决措施:
如何简单处理呢?直接让chrom禁用这个samesite功能即可。打开链接:chrome://flags/#same-site-by-default-cookies。然后搜索:SameSite by default cookies,将default改成disable即可:
相关文章
- pycharm django环境搭建_宝塔Linux怎么搭建asp程序
- Django(13)django时区问题
- Django(37)配置django日志[通俗易懂]
- django drf_mnbkdrf
- django官方入门教程_DJango
- Django-REST-framework 用户认证源码分析
- Django-REST-framework 权限管理源码分析
- django rest_framework使用pytest单元测试
- 使用Django快速搭建reportServer
- Django Ajax 实现Web命令行执行
- django admin 使用 ckeditor 富文本编辑器
- python-Django 高级特性-Django 缓存(二)
- Django REST Framework-过滤器(二)
- Django REST Framework-分页(一)
- ORA-47407: ALWAYS AUDIT option set for Rule Set string ORACLE 报错 故障修复 远程处理
- django get 数据为空处理详解编程语言
- Python3:Django连接Mysql数据库时出错,’Did you install mysqlclient or MySQL-python’详解编程语言
- 深入浅出:Oracle数据库SET操作(oracle数据库set)
- Linux中的Set命令:配置为自由的系统(linux中的set命令)
- 查看 Redis 中的 Set:实例指南(redis查看set)
- 深入探究Linux Set命令:使用及常见应用(linux的set)
- Linux系统下部署Django网站快速指南(linux 部署django)
- MySQL 中如何使用 SET 进行赋值操作(mysql中set赋值)
- MySQL中SET X的作用和用法解析(mysql中set x)
- 使用Redis管理Set集合的实例(set集合存入redis)
- 深入浅出Redis集群Set的简单操作(redis集群set过程)
- Redis策略中的随机取Set精髓(redis随机取set)
- Oracle中掌握SET语句让你如虎添翼(oracle中set语句)
- 使用Oracle SET语句实现变量赋值(oracle set语句)
- PythonGAE、Django导出Excel的方法