我有两个vue app
- 门户网站https://portal.example.com
- authN打开https://auth.example.com
登录https://auth.example.com后Cookie存储为
- httpOnly;域= .example.com;同一地点=严格;路径=/
如果我打开https://portal.example.com或https://auth.example.com cookie附加到请求。所以cookie可以从不同的子域使用。
如果我使用GET调用,从https://portal.example.com取回("https://auth.example.com/whoami ") cookie不会附加到这个rest调用。
在检查器中我看到调用有
- Sec-Fetch-Site:同一地点
- 主持人:auth.example.com
- 来源:https://portal.example.com
- 推荐人:https://portal.example.com
为什么Cookie没有被附加?
我找到了缺失的宁静在第一个应用中fetch需要添加到header
{credentials: 'include'}
在第二个应用程序(vue/next)中,我需要
setResponseHeaders(event, {
"Access-Control-Allow-Origin": <url-first-app>,
"Access-Control-Allow-Credentials": "true",
});