vue项目多个不同的服务器请求地址管理

这篇具有很好参考价值的文章主要介绍了vue项目多个不同的服务器请求地址管理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

vue项目多个不同的服务器请求地址管理

在vue项目开发过程中,获取不同的数据可能会出现需要请求多个不同服务器地址的域名,这个时候需要对不同域名的请求地址进行管理以及跨域的代理。

vue项目配置多个请求域名,vue.js,javascript,前端框架,es6,axios请求,proxy模式,vue跨域配置

一、单服务器域名地址的跨域代理和请求配置:

跨域配置:
在vue项目的vue.config.js文件中对devServer.proxy进行配置,如下:

module.exports = {
    publicPath: './', // 默认加载地址为当前目录下
    devServer:{
        hot: true,
        port: 8000, // 启动端口
        open: true,  // 启动后是否自动打开网页
        proxy: {
            "/api/": {
                target: "http://XXXXX.com/",
                changeOrigin: true,
                pathRewrite: {
                '^/api': ''
                }
            }
        }
    }
}

axios请求封装:
封装axios请求的js文件中配置如下:

import axios from 'axios';

axios.defaults.baseURL = '/api'; // 默认请求地址
// 其他配置此处省略......

// 封装请求API
export function XXXAPI(data) {
    return axios({
        url: '/xxx/xxx/', // 接口地址
        method: 'post', // 请求方法
        data: data, // 参数数据
    })
}

// 需要调用接口时调XXXAPI即可

这是单一服务器请求地址的写法,直接在axios.defaults选项中配置baseURL地址。

二、多服务器域名地址的跨域代理和请求配置:

多服务器域名的跨域配置:
同样是在vue.config.js文件中对devServer.proxy进行配置,如下:

module.exports = {
    publicPath: './', // 默认加载地址为当前目录下
    devServer:{
        hot: true,
        port: 8000, // 启动端口
        open: true,  // 启动后是否自动打开网页
        proxy: {
        	// 配置服务器地址一
            "/api/": {
                target: "http://XXXXX.com/",
                changeOrigin: true,
                pathRewrite: {
                '^/api': ''
                }
            },
            // 配置服务器地址二
            "/bpi/": {
                target: "http://XXXXX.com/",
                changeOrigin: true,
                pathRewrite: {
                '^/bpi': ''
                }
            }
        }
    }
}

// 多个服务器的跨域配置在proxy中添加多个类进行设置

多个服务器地址的axios请求封装:
在封装的axios请求文件中配置如下:

import axios from 'axios';

const aaAxios = axios.create({
    baseURL: '/api'
})

const bbAxios = axios.create({
    baseURL: '/bpi'
})

// 封装请求API
export function aaAPI(data) {
    return aaAxios({
        url: '/xxx/xxx/', // 接口地址
        method: 'post', // 请求方法
        data: data, // 参数数据
    })
}

export function bbAPI(data) {
    return bbAxios({
        url: '/xxx/xxx/', // 接口地址
        method: 'post', // 请求方法
        data: data, // 参数数据
    })
}

// 需要调用接口时调封装的API即可

多服务器请求地址的情况下,axios请求封装中,需要根据不同的请求地址创建不同的axios对象,通过axios.create()设置不同的baseURL地址。在后续封装请求API时,根据不同的接口使用不同的axios对象即可实现同一个vue项目请求不同的服务器地址。

END

如果对你有帮助,记得点个赞噢(~~)文章来源地址https://www.toymoban.com/news/detail-762380.html

到了这里,关于vue项目多个不同的服务器请求地址管理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决nacos配置服务ip地址与服务器ip地址不同的问题

    存在问题:在使用nacos注册服务时,如果没有显式配置的话,nacos为服务注册的ip地址通常不会是localhost。 因此,在进行调用的时侯,nacos会返回在其中注册的IP地址,可这经常与服务所在服务器地址不同,最终导致调用服务超时的异常 原因分析:nacos默认使用计算机其中之一

    2024年04月17日
    浏览(45)
  • axios 多个baseURL配置、实现不同前缀代理到不同的服务器的几种方式

    前言: 在开发中,有可能遇到每部分的功能的需要调用另一台服务器的地址。这个时候就需要设置不同的请求前缀首先代理到不同的服务器地址。 一、axios封装实例以及代理:(不是完整的封装实例,重点在于baseURL的区别) 文件路径:/CMDB/src/utils/request.js 代理的时候有两个前

    2024年02月04日
    浏览(39)
  • 用Nginx将前端Vue项目部署到云服务器(含代理实现请求跨域)

    记录使用Nginx将 纯前端 的Vue3项目部署到阿里云服务器(Ubuntu 22.04)上,包含通过Nginx代理实现 跨域请求 、以及个人踩坑记录~ 执行下列命令安装: 安装完成后查看nignx版本,显示版本信息则说明安装成果 启动nginx,如正确启动,则不会出现任何提示信息。 nginx启动成功后打

    2024年04月12日
    浏览(45)
  • 如何在DHCP服务器上实现不同VLAN进来分配给不同地址段的IP

    场景描述: A公司的DHCP搭建在win server服务器上,目前公司内部有不同的部门,现在想实现不同的部门使用不同的网段。 具体要求: Windows server2008搭建DHCP服务器;地址:10.76.0.1 设备管理地址:vlan80:10.76.80.X 地址池: vlan10:10.76.10.100-200 vlan20:10.76.20.100-200 vlan30:10.76.30.100

    2024年01月16日
    浏览(45)
  • 微信小程序请求服务器地址报错

    {\\\"errno\\\":600009,\\\"errMsg\\\":\\\"request:fail invalid url \\\"/home/swiperdata\\\"\\\"} 1、基地址没写 2、基地址或者接口地址没写对,可能多了空格或者字符等 3、使用了第三方封装的请求方法没有在main.js引入注册 注意: 需在根目录的main.js 的new Vue()和app.$mount()之间引入此文件。 在new Vue()后面的原因是,

    2024年02月11日
    浏览(43)
  • 银河麒麟V10服务器操作系统同一块网卡添加多个ip地址

    操作系统:Linux version 3.10.0-862.9.1.ns7_4.37.mips64el,麒麟V10服务器操作系统 因为需要,现在要向enp5s0f3所在网卡添加多个ip地址。 最后执行 /etc/init.d/network restart 即可。 这样也行。

    2024年02月12日
    浏览(137)
  • Mysql分布式集群部署---MySQL集群Cluster将数据分成多个片段,每个片段存储在不同的服务器上

    部署MysqlCluster集群环境 MySQL集群Cluster将数据分成多个片段,每个片段存储在不同的服务器上。这样可以将数据负载分散到多个服务器上,提高系统的性能和可扩展性。 MySQL集群Cluster使用多个服务器来存储数据,因此需要确保数据在不同的服务器之间同步。MySQL集群Cluster使用

    2024年02月02日
    浏览(47)
  • nestjs:nginx反向代理服务器后如何获取请求的ip地址

    问题:         如题 参考:         nodejs+nginx获取真实ip-腾讯云开发者社区-腾讯云         「转」从限流谈到伪造 IP nginx remote_addr          解决办法: 1.设置nginx         对于代理部分,对http header添加Host、X-Real-IP、X-Forwarded-For(最重要)          2.nestjs使用

    2024年02月13日
    浏览(56)
  • nginx连接前后端分离项目 或 负载均衡映射多个服务器

    nginx的两种用法: 打通前后端项目,前后端分离的项目,通过nginx建立连接 负载均衡,一台机器请求转发至多个服务器 前端项目中的配置: 后端项目的ip和端口号就是正常的 下面看看nginx的配置文件: 将打包后的前端项目放这里: vue项目打包后会生成一个dist文件夹 放在服

    2024年02月05日
    浏览(60)
  • 服务器上一个域名对应多个前端项目的nginx转发配置

    场景: 当有两个前端项目A,B的时候,项目A(对应端口8000)和项目B(对应端口8001)分别部署在服务器的不同位置,通过服务器ip+端口都能正常访问单独的项目A和项目B;现在要求两个项目共用一个域名~~也就是说访问http://10.111.182.xxx:8000的时候默认访问项目A的资源,访问htt

    2024年02月05日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包