axios配置多个baseurl

一:配置部分

config/dev.env.js:

const merges = require('webpack-merge');
const prodEnv = require('./prod.env');

module.exports = merges(prodEnv, {
  NODE_ENV: 'development',
  APP_NAME: '****',
  API_ROOT: '"https://xxx.xxx.xxx.xx:xxxx"'
});

config/prod.env.js:

module.exports = {
  NODE_ENV: 'production',
  APP_NAME: '*********',
  API_ROOT: 'http://xxx.xxx.xxx.xx:xxxx'
};

axios/index.js:

import axios from 'axios'
import store from '../store'
import router from '../router'
import Vue from 'vue';
let v = new Vue();
let _this = this;
var repeatUrl = ""//防止重复提交

const http = axios.create({
  timeout: 10000 * 12,
  baseURL: process.env.API_ROOT, //地址1
  headers: {
    'X-Requested-With': 'XMLHttpRequest'
  }
})
const http1 = axios.create({
  timeout: 10000 * 12,
  baseURL: "http://ss.sss.s.ss:ssss", //地址2
  headers: {
    'X-Requested-With': 'XMLHttpRequest'
  }
})

http.interceptors.request.use(
  config => {return config}, 
  error => { return Promise.reject(error)}
);

http1.interceptors.request.use(config => {
  return config;
}, error => {
  return Promise.reject(error);
});

http.interceptors.response.use(response => {
    return response;
  },
  error => {}
);

http1.interceptors.response.use(response => {
    return response;
  },
  error => {}
);

export {http, http1}

main.js:

import {http} from './axios'
import {http1} from './axios'

Vue.prototype.$http = http
Vue.prototype.$http1 = http1

二:使用

//使用地址1请求:
this.$http.get(`${this.urlType}/toCheck`).then((res) => {})
//使用地址2请求:
this.$http1.get(`${this.urlType}/toCheck`).then((res) => {})

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值