vue3 借助vite配置了proxy代理情况,查看真实的接口调用地址方法

参考 https://blog.csdn.net/weixin_43606158/article/details/132436745

在浏览器查看请求头和响应头发现只有代理前的url,没有显示代理后的路径

  • vite.config.ts
javascript 复制代码
    server: {
      proxy: {
        [env.VITE_APP_BASE_API]: {
          target: env.VITE_SERVE, //获取数据的服务器地址设置
          changeOrigin: true, //需要代理跨域
          rewrite:(path)=>path.replace(/^\/api/,''),// 路径重写 不要api的意思
          bypass(req, res, options) {
            //@ts-ignore
            const proxyUrl = new URL(options.rewrite(req.url) || '',(options.target)as string)?.href || '';
            console.log(proxyUrl);
            req.headers['x-req-proxyUrl'] = proxyUrl
            res.setHeader('x-res-proxyUrl',proxyUrl)
          },
        }
      }
    }
  • 在控制台的header中就能查看到了
  • 补充一下这个完整路径的由来

登陆按钮在login/index.vue中,点击后的回调函数里 调用pinia仓库(user仓库)提供的登录接口userLogin,同时传递数据过去。

仓库中的userLogin,是调用了api接口的方法

api接口使用的axios是经过二次封装之后的,axios有基本路径baseURL(源自env.development),以及请求路径(仓库调用时传参)。

此时的路径是/api/user/login。发送请求时,通过vite代理,在前面加上env.VITE_SERVE,同时rewrite。

相关推荐
_codeOH7 小时前
Vue 3 vs React 19:框架还在卷,核心原理就这些
前端·vue.js
英勇无比的消炎药8 小时前
新手必看玩转TinyRobot一定要避开这些坑
前端·vue.js
英勇无比的消炎药8 小时前
别再盲目混用AI组件库和传统组件库差距原来这么大
前端·vue.js
英勇无比的消炎药10 小时前
前端提效神器全新AI组件库TinyRobot改写日常开发模式
前端·vue.js
英勇无比的消炎药11 小时前
前端提效神器TinyRobot
前端·vue.js
CDwenhuohuo11 小时前
uni 背景色渐变 全屏
前端·javascript·vue.js
爱怪笑的小杰杰11 小时前
Vue 项目交付第三方开发,如何隐藏核心 JS 源码?
前端·javascript·vue.js
小二·11 小时前
Vue 3 组合式 API 进阶实战
前端·javascript·vue.js
rising start12 小时前
九、vue3 组件通信:全场景详解
前端·vue.js·typescript
编程技术手记12 小时前
Vue Scoped CSS 与动态创建 DOM 的兼容性问题
前端·css·vue.js