一 目的
vue配置了代理,但访问后台总是404,怀疑是路径问题,但控制台看不到真实路径很难受
二 解决
使用byPass(), 添加到响应头查看
'/api': {
target: env.VITE_NODE_ENV === 'prod' ? 'https://***.com' : `https://***.com`,
changeOrigin: true,
secure: false,
bypass(req, res, options) {
const proxyURL = options.target + options.rewrite(req.url)
console.log('proxyURL', proxyURL)
req.headers['x-req-proxyURL'] = proxyURL // 设置未生效
res.setHeader('x-req-proxyURL', proxyURL) // 设置响应头可以看到
},
rewrite: (path) => path.replace(/^\/api/, 'api')
}