如何在 chrome 中解决 jquery ajax withcredentials:true 失效问题
在跨域请求中使用 jquery ajax 时,withcredentials:true 选项通常能够发送 cookie 凭据。然而,一些用户报告称此选项在 chrome 中无效。
这个问题的原因在于 chrome 中实施了称为 samesite 的新 cookie 策略。samesite=strict 标记的 cookie 不会在跨域请求中发送,即使设置了 xhr.withcredentials = true。
解决方案
要解决此问题,必须在需要发送 cookie 的特定 cookie 上禁用 samesite 策略。对于 asp.net core 2.0 身份验证 cookie,可以通过在 startup.cs 文件中添加以下代码来实现:
services.AddAuthentication(...) .AddCookie(option => option.Cookie.SameSite = SameSiteMode.None) .AddOpenIdConnect(...)
这样 chrome 浏览器就不会阻止 cookie 的发送,withcredentials:true 选项将正常工作。
以上就是Chrome 浏览器中如何解决jQuery ajax withCredentials:true 失效问题?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号