vue请求代理查看真实地址

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或者端口填写错误问题,也可能是没有访问权限问题。
在这里插入图片描述
如果有响应,则根据真实的访问地址进行分析即可。

  • 16
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
Vue代理模式是一种处理跨域问题的有效方法。在Vue项目,由于浏览器的同源策略限制,当前端项目和后端接口不在同一个域下时,会引发跨域问题。 为了解决Vue项目的跨域问题,可以使用代理模式。代理模式的基本思路是在Vue的配置文件配置一个代理,将前端请求发送给代理服务器,再由代理服务器将请求转发给真正的后端接口。 在Vue项目根目录下的`vue.config.js`,可以按照以下方式配置代理: ```javascript module.exports = { devServer: { proxy: { '/api': { target: 'http://backend-server.com', changeOrigin: true, pathRewrite: { '^/api': '' } } } } } ``` 以上配置表示将以`/api`开头的请求转发到`http://backend-server.com`后端服务器上。`changeOrigin`选项设置为`true`表示修改请求的`host`为目标URL的host,`pathRewrite`选项用于重写URL的路径。 使用代理模式后,前端发送的请求会先经过代理服务器,然后再由代理服务器转发给后端接口,这样就解决了跨域问题。在开发环境,可以将代理配置为开发服务器,而在生产环境,可以将代理配置为真实的后端服务器。 总结来说,Vue代理模式可以通过在配置文件设置代理服务器,将前端项目请求发送给代理服务器,再由代理服务器转发给后端接口,来解决跨域问题。通过这种方式,可以更方便地开发Vue项目并与后端接口进行通信。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

[chao]

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

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

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

打赏作者

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

抵扣说明:

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

余额充值