当前位置:首页 > 文章列表 > 文章 > 前端 > jQuery ajax withCredentials:true 在 Chrome 中失效:为什么?

jQuery ajax withCredentials:true 在 Chrome 中失效:为什么?

2024-11-08 10:07:06 0浏览 收藏

本篇文章给大家分享《jQuery ajax withCredentials:true 在 Chrome 中失效:为什么?》,覆盖了文章的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。

jQuery ajax withCredentials:true 在 Chrome 中失效:为什么?

jquery ajax withcredentials:true 在 chrome 中失效

在使用 jquery 的 ajax 请求时,如果设置了 withcredentials: true 希望浏览器发送 cookie,以实现跨域请求时需要携带 cookie 的场景,在 chrome 浏览器中却始终失效,而在 safari 和 firefox 中又可以正常发送 cookie,这是为什么呢?

这与 chrome 和 opera 浏览器中实施的 samesite cookie 策略有关。该策略规定,标记为 samesite=strict 的 cookie 不能在 cors 请求中发送,即使设置了 xhr.withcredentials = true 也是如此。

为了解决此问题,需要在特定的 cookie 上禁用 samesite 策略。例如,对于 asp.net core 2.0 身份验证 cookie,可以进行以下操作:

services.AddAuthentication(...)
    .AddCookie(option => option.Cookie.SameSite = SameSiteMode.None)
    .AddOpenIdConnect(...)

这将禁用特定 cookie(在本例中为身份验证 cookie)的 samesite 策略,使其可以在 chrome 中通过 ajax.withcredentials 机制发送。

本篇关于《jQuery ajax withCredentials:true 在 Chrome 中失效:为什么?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

如何重置电脑系统并恢复出厂设置如何重置电脑系统并恢复出厂设置
上一篇
如何重置电脑系统并恢复出厂设置
数据库同步中的 [B@5d1c8af1 值代表什么?如何解决?
下一篇
数据库同步中的 [B@5d1c8af1 值代表什么?如何解决?
查看更多
最新文章
2. CSS 样式使用 ::after 伪元素来在图片上叠加文字: .im">
文章 · 前端   |  2小时前  |  
图片
2. CSS 样式使用 ::after 伪元素来在图片上叠加文字: .im">CSS图片上叠加文字的实现方法,主要通过使用伪元素(如 ::after)来在图片上方添加内容。以下是详细步骤和示例代码:1. HTML 结构假设你有一个包含图片的容器,结构如下:
图片
2. CSS 样式使用 ::after 伪元素来在图片上叠加文字: .im
318浏览 收藏
查看更多
课程推荐
查看更多
AI推荐
查看更多
相关文章
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码