【问题标题】:Setting cookie from subdomain to another subdomain将 cookie 从子域设置到另一个子域
【发布时间】:2023-03-29 11:52:02
【问题描述】:

所以我有一个项目的以下 URL 结构。

  • development.project.com 拥有一个宣传册网站
  • api.development.project.com 托管 API 服务
  • cms.development.project.com 托管一个 CMS

现在,当我从 cms.development.project.com 向 api.development.project.com 发出登录请求,并返回一个域设置为 .project.com 的 cookie 时,该 cookie 被浏览器拒绝为无效域。设置 .development.project.com 时也会发生同样的情况

注意:我读到 cookie 域中的加载点通配符 (.) 已被现代浏览器弃用并且实际上被忽略了。我尝试了有无,结果相同。

cookie 具有其他属性:httponly、secure 和 SameSite None。

当两个项目在同一个主域 (project.com) 和同一个一级子域 (development.project.com) 下时,为什么 cookie 会被拒绝?如何让 api.development.project.com 为 cms.development.project.com 设置 cookie?

【问题讨论】:

    标签: cookies


    【解决方案1】:

    cookie 实际上并未被拒绝。只是浏览器说直接域拒绝 cookie。但是从其他子域向 API 子域发送调用确实包含了想要的 cookie。

    【讨论】: