You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SameSite=Strict Cookie在跨子域fetch请求中未携带的原因排查

问题原因及解决办法

核心原因

  • SameSite=Strict 的限制:该属性的 Cookie 仅会在同一站点的顶级导航场景(比如直接访问页面、点击同站点链接跳转)中被携带,通过 fetch 发起的跨子域 AJAX 请求属于非顶级导航的跨源请求,Strict 规则会阻止 Cookie 附加。
  • fetch 默认不携带跨源凭证:fetch API 默认不会在跨源请求中携带 Cookie,即使 Cookie 的域配置正确,也需要显式开启凭证携带设置。

解决方法

  1. 调整 Cookie 的 SameSite 属性
    若业务场景允许,可将 Cookie 的 SameSite 修改为 Lax(支持 same-site 下的 AJAX 请求携带 Cookie),若需要跨完全不同的站点则改为 None(需同时搭配 Secure 属性,仅在 HTTPS 环境生效)。
  2. 配置 fetch 的凭证参数
    发起请求时添加 credentials: 'include',确保跨源请求携带 Cookie:
    fetch("https://auth.example.com/whoami", {
      credentials: 'include'
    })
    

内容的提问来源于stack exchange,提问作者v-kessler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 12:47:10