问题描述:在登录之后,我怎么在 localhost 中获取登录页面(登录页面地址为 39.xxx)的 cookie 呢?
目前我所了解到的方法
- 利用NGINX 进行反向代理
- 利用 webpack 中的 proxy—pass代理
上面两种都是进行了反向代理, cookie 只允许同一域名读取,但是这么操作后,它们是否就同源呢(domain 是否相同)?目前我测试出并不相同,并没有正确读取到 cookie。请各位指点。
上面两种都是进行了反向代理, cookie 只允许同一域名读取,但是这么操作后,它们是否就同源呢(domain 是否相同)?目前我测试出并不相同,并没有正确读取到 cookie。请各位指点。
直接使用 webpack-dev-server 的代理,cookie 会被自动转写,可以被正常传递。如果因为 sameSite
的原因导致 cookie 失效,可以这样改写一下:
config.devServer = {
proxy: {
'/': {
onProxyRes(proxyRes) {
const key = 'set-cookie';
if (proxyRes.headers[key]) {
const cookies = proxyRes.headers[key].join('').split(' ');
proxyRes.headers[key] = [cookies[0], 'Path=/'].join(' ');
}
},
}
},
};
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
如果登陆页面地址主域名和当前页面不同的话,怎么样都拿不到 cookie, 题主放弃吧