目前我正在与丢失cookie的奇怪现象作斗争..
之前,我也使用 AWS 作为基础设施来处理前端和后端。
由于部署问题,(前端部署序列花费了太长的时间)决定使用Vercel作为前端。
现在发生的情况是,请求开始时并未在请求标头中附加 cookie。
由于我目前正在开发流媒体服务,
我有 3 个演员用于流媒体场景
我将缩写为(a.domain.com,b.domain.com,c.domain.com)
a.domain.com = frontend b.domain.com = backend c.domain.com = dvd server
以下是我的场景
查看cookie的检查表(chrome检查工具->应用程序选项卡),似乎
set-cookie
效果很好。
但是在向“c.domain.com”发出请求时,我发现请求标头中的 cookie 丢失了。
我尝试过什么??
设置
credential : 'include'
获取时 :: 前端
允许 CORS :: 后端
设置cookie时添加
Domain
属性::后端
(前任。
Set-Cookie: wwwCookie=wwwCookie; Domain=.domain.com
)<- not sure is it
Domain=domain.com
)
P.S
与之前的请求和当前的请求(失败)进行比较
我发现为当前请求添加了
partition key
。这与当前问题有关吗?
解决了!
问题出在 AWS API Gateway 配置上。
我需要将 API 网关服务的 CORS 配置设置为与我的服务器配置设置完全相同。
关注以下文章
https://medium.com/@sharadokey/understanding-cors-and-cross-origin-cookies-bf36d624da78
向Sharadokey表示感谢