Ruoyi-Vue处理跨域问题同时请求多个域名接口(前端处理方法)

 更新时间:2024年05月25日 11:44:06   作者:技术用户  
跨域问题一直都是很多人比较困扰的问题,这篇文章主要给大家介绍了关于Ruoyi-Vue处理跨域问题同时请求多个域名接口的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

Ruoyi-Vue项目请求不同地址的接口,主要在于处理跨域问题,即vue.config.js文件处理

1. 修改配置文件(.env.development/.env.production)

# 第三方服务
VUE_APP_API_SERVICE='/service'

2. 修改vue.config.js文件

即新增一个代理。部署项目时,如果使用nginx等代理方式,记得配置VUE_APP_API_SERVICE对应的路径及跳转地址

devServer: {
    host: "0.0.0.0",
    port: port,
    open: true,
    proxy: {
      [process.env.VUE_APP_BASE_API]: {
        target: `http://localhost:8080`,
        changeOrigin: true,
        pathRewrite: {
          ["^" + process.env.VUE_APP_BASE_API]: "",
        },
      },
      // ===========这里是新增的==============
      [process.env.VUE_APP_API_SERVICE]: {
        target: "http://47.100.25.xxx:8080",//<<你想要请求的域名及端口>>
        changeOrigin: true,
        pathRewrite: {
          [process.env.VUE_APP_API_SERVICE]: "",
        },
      },
      // ===========这里是新增的==============
    },
    disableHostCheck: true,
  },

3. 新建requestNew.js文件

封装请求处理,可参照原版Ruoyi的封装请求

import axios from "axios";

export function requestService(config) {
  // 创建axios实例
  const instance = axios.create({
    baseURL: process.env.VUE_APP_API_SERVICE,
    timeout: 5000,
  });

  // 请求响应拦截
  instance.interceptors.response.use((res) => {
    return res.data;
  });

  // 发送请求
  return instance(config);
}

4. 新增接口文件

参考api下的接口文件配置

import request from "@/utils/requestNew";

// 查询列表
export function getCarList() {
  return request({
    url: "/car/list",
    method: "get",
  });
}

使用示例

<template>
  <div class="app-container">
    <el-button @click="getList">测试</el-button>
  </div>
</template>

<script>
import { getCarList } from "@/api/../..";

methods: {
    /** 调用第三方接口 */
    getList() {
      getCarList().then((res) => {
        console.log(res);
      });
    },
}
</script>

总结 

到此这篇关于Ruoyi-Vue处理跨域问题同时请求多个域名接口文章就介绍到这了,更多相关Ruoyi-Vue处理跨域请求多个域名接口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Nuxt3:拉取项目模板失败问题以及解决

    Nuxt3:拉取项目模板失败问题以及解决

    文章描述了在使用官网命令创建Nuxt3项目时遇到的问题,通过分析命令,推测问题出在拉取项目模板失败,解决方法是手动访问并下载项目模板,解压后按照官网教程安装依赖并启动,最终成功解决问题
    2024-12-12
  • Vue数据驱动试图的实现方法及原理

    Vue数据驱动试图的实现方法及原理

    当Vue实例中的数据(data)发生变化时,与之相关联的视图(template)会自动更新,反映出最新的数据状态, Vue的数据驱动视图是通过其响应式系统实现的,以下是Vue数据驱动视图实现的核心原理,需要的朋友可以参考下
    2024-10-10
  • vue+flv.js+SpringBoot+websocket实现视频监控与回放功能

    vue+flv.js+SpringBoot+websocket实现视频监控与回放功能

    vue+springboot的项目,需要在页面展示出海康的硬盘录像机连接的摄像头的实时监控画面以及回放功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2022-02-02
  • vue中的el-button样式自定义方式

    vue中的el-button样式自定义方式

    这篇文章主要介绍了vue中的el-button样式自定义方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Vue PC端实现扫码登录功能示例代码

    Vue PC端实现扫码登录功能示例代码

    目前大多数PC端应用都有配套的移动端APP,如微信,淘宝等,通过使用手机APP上的扫一扫功能去扫页面二维码图片进行登录,使得用户登录操作更方便,安全,快捷,这篇文章主要介绍了Vue PC端如何实现扫码登录功能,需要的朋友可以参考下
    2023-01-01
  • ElementUI之表格toggleRowSelection选中踩坑记录

    ElementUI之表格toggleRowSelection选中踩坑记录

    这篇文章主要介绍了ElementUI之表格toggleRowSelection选中踩坑记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • Vue Echarts实现柱形图从右向左滚动效果

    Vue Echarts实现柱形图从右向左滚动效果

    这篇文章主要为大家详细介绍了Vue如何利用Echarts实现柱形图从右向左滚动的效果,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-05-05
  • Vue-router中path的设置方式

    Vue-router中path的设置方式

    这篇文章主要介绍了Vue-router中path的设置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • 关于vue 结合原生js 解决echarts resize问题

    关于vue 结合原生js 解决echarts resize问题

    这篇文章主要介绍了关于vue 结合原生js 解决echarts resize问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • Vue 实时监听窗口变化 windowresize的两种方法

    Vue 实时监听窗口变化 windowresize的两种方法

    这篇文章主要介绍了Vue 实时监听窗口变化 windowresize的两种方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-11-11

最新评论