vue请求代理查看真实地址

本文详细介绍了如何在Vue项目中,通过Webpack和Vite的devServer配置proxy代理,以便在前后端联调时跟踪和显示真实请求地址,便于问题排查。

vue使用proxy代理地址,进行前后端联调时,服务不通时很难发现问题在哪里,所以此文讲述了可以查看访问的真实地址的相关配置,包括webpack和vite。

实现效果

浏览器显示
在这里插入图片描述

控制台显示
在这里插入图片描述

配置

webpack

vue.config.js

module.exports = {
  devServer: {
    proxy: {
      '/APPServer': {
      	//process.env.BASEURL替换为http://ip:host也可以
        target: process.env.BASEURL, // 代理地址 http://ip:host
        changeOrigin: true,
        pathRewrite: {
          '^/APPServer': '/ECSH5Core',
        },
        onProxyRes(proxyRes, req, res) {
          const realUrl = process.env.BASEURL + req.url|| ''; // 真实请求网址
          console.log(realUrl); // 在终端显示
          proxyRes.headers['A-Real-Url'] = realUrl; // 添加响应标头(A-Real-Url为自定义命名),在浏览器中显示
        },
      },
    },
  },
};

vite

vite.config.ts

import { defineConfig } from 'vite';
// https://vitejs.dev/config/
export default defineConfig({
  server: {
    proxy: {
      '/APPServer': {
        target: process.env.BASEURL, // 代理地址 http://ip:host
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/APPServer/, ''),
        bypass(req, res, options: any) {
          const realUrl = options.target + (options.rewrite ? options.rewrite(req.url) : '');
          console.log(realUrl); // 在终端显示
          res.setHeader('A-Real-Url', realUrl); // 添加响应标头(A-Real-Url为自定义命名),在浏览器中显示
        },
      },
    },
  },
});

调试分析

如果浏览器中网络没有响应,说明ip是不通的,此时需要解决网络问题,可能是IP或者端口填写错误问题,也可能是没有访问权限问题。
在这里插入图片描述
如果有响应,则根据真实的访问地址进行分析即可。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

[chao]

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值