博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
QQ浏览器兼容模式下Cookie失效 导致的NetCore Cookie认证失效
阅读量:5228 次
发布时间:2019-06-14

本文共 732 字,大约阅读时间需要 2 分钟。

原文:

最近在写NetCore项目采用的是NetCore的Cookie认证。结果偶然发现QQ浏览器登录不好用。

 

 

 导致原因

 首先Fiddler 4查看一下两次请求

 

 

 

第一次Post进行登录 返回302重定向到站点首页并带回Cookie (一切正常)

 

但是看第二条http请求,返回又是302 ,查看相关信息,请求时Cookie 根本没带入

 

 

 

到此基本知道整个登录失败是因为Cookie没有带入请求头。

 

 

解决方案:

  • NetCore Cookie认证下如何解决

经过一系列测试后发现是因为我们响应的Cookie里面有samesite属性 影响了QQ浏览器兼容Cookie带入(也许是个浏览器Bug吧)

好下面说如何解决此问题在NetCore认证中我们如何取消掉此属性,

  • 自定义Cookie如何解决

其实不光我们的认证Cookie  其他Cookie也一样 只要我们在NetCore中指定了Cooke的CookieOptions,不设置SameSite的情况下默认为SameSiteMode.Lax 此时在QQ浏览器兼容模式 你的Cookie就不会带入请求

context.Response.Cookies.Append("test-SameSite", "123456", new CookieOptions()                {                    SameSite=SameSiteMode.None                });

 

posted on
2019-08-05 00:04 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/lonelyxmas/p/11300666.html

你可能感兴趣的文章
sql server系统表详细说明
查看>>
SQL Server 2008连接字符串写法大全
查看>>
sql server 使用链接服务器远程查询
查看>>
JavaScript中的继承
查看>>
MySQL简介
查看>>
设计模式之桥接模式(Bridge)
查看>>
转:探讨跨域请求资源的几种方式
查看>>
jquery的$(document).ready()和onload的加载顺序
查看>>
Python Web框架Django (五)
查看>>
.net学习之继承、里氏替换原则LSP、虚方法、多态、抽象类、Equals方法、接口、装箱拆箱、字符串------(转)...
查看>>
Android 开发 ThreadPool(线程池) 总结
查看>>
【poj1568】 Find the Winning Move
查看>>
【codevs1033】 蚯蚓的游戏问题
查看>>
TP框架中的page分页实现
查看>>
[转]跨越千年的RSA算法
查看>>
传奇学者应明生
查看>>
【程序执行原理】
查看>>
第二次项目冲刺(Beta阶段)5.24
查看>>
python的多行注释
查看>>
连接Oracle需要jar包和javadoc文档的下载
查看>>