问题描述
在闲得一币
项目中使用了Zhenly
自己实现的授权系统Violet
,在Zhenly
把自己的服务器部署完成后,发现授权登录出现了问题。
代理以及访问的情况如下:
-
代理服务器:vue中配置请求代理,将请求代理到
https://coin.zhenly.cn/test/
module.exports = { publicPath: '/', devServer: { disableHostCheck: true, host: 'localhost', proxy: { '/api': { // 目标 API 地址 target: 'https://coin.zhenly.cn/test/', changeOrigin: true, ws: true, pathRewrite: { '^/api': '' } } } }, productionSourceMap: false }
-
浏览器访问url:
localhost:8080
这里就出现了一个问题,授权登录后,cookies保存在了zhenly.cn
域名下,无法获取cookies。
解决方法
浏览器访问urlhttps://host.zhenly.cn:8080
,服务器将域名https://host.zhenly.cn
映射回127.0.0.1,经过映射后cookies就在同一域名下。