...
let cookie = ''
``` proxy: {
// 配置跨域-将所有/api的请求拦截,代理到target上
'/api': {
target: 'http://www.xxx.com/',
ws: true,
changOrigin: true,
pathRewrite: { // ---->>>并将/api换成/
'^/api': ''
},
onProxyReq(proxyReq, req, res) {
// 1.第一次请求/login接口,没有cookie
// 3.第二次请求,cookie有值,赋值给req,以后每次请求均赋值
if (cookie) {
proxyReq.setHeader('cookie', cookie)
}
},
onProxyRes(proxyRes, req, res) {
// 2.第一次/login请求返回携带cookie,赋值保存,也仅仅login请求返回cookie
if (!cookie) {
cookie = proxyRes.headers['set-cookie']
}
// 4.第二次请求以及之后其他接口请求的时候并不返回cookie,所以不能再赋值
}
}
}