g_csrf_token 未作为 cookie 传递到子域

E P*_*nto 7 google-signin

所以我有一个在 运行的前端https://site.example.com,带有“使用谷歌登录”按钮。该按钮使用该data-login_uri属性将确认 POST 请求发送到我的后端https://api.site.example.com

现在指南指出我们应该将请求正文中的 g_csrf_token 与 cookie 中的 g_csrf_token 进行比较,只有我的后端没有收到 cookie 值。我检查了 chrome 中的网络日志,cookie 已被过滤掉,属性旁边显示以下消息domain

此 cookie 被阻止,因为请求 URL 的域与 cookie 的域不完全匹配,请求 URL 的域也不是 cookie 的 Domain 属性值的子域。

但这对我来说没有任何意义,因为请求 URL (api.site.example.com) 应该是 cookie 域值 (site.example.com) 的子域,因此 cookie 应该有效。

我尝试使用data-state_cookie_domain将域设置为api.site.example.comsite.example.comexample.com,但这似乎仅适用于“一键”用户界面并且没有任何效果。存储库中的这个问题google-auth-library-nodejs将作者引导到这里,但我无法找到涵盖该场景的相关问题。