vue項目根據不同環境動態配置接口


首先,在公共請求接口的地方src/api/common.js

1 // 公共配置接口域名接口
2 export function configApi(data) {
3   return request({
4     url: '配置接口',
5     method: 'post',
6     data
7   })
8 }

 

然后,main.js引用和使用

import { configApi } from './api/commonApi' // 引入公共接口
 1 // 請求公共配置域名接口
 2 var params = {
 3   'app_secret': 'BC3.342.78',
 4   'appid': 'BC100'
 5 }
 6 configApi(params)
 7   .then(response => {
 8     var data = response.result
 9     if (process.env.EVN_CONFIG === 'prod' && process.env.NODE_ENV === 'production') {
10       // 正式環境
11       Vue.prototype.baseConfig = data[0]
12     } else if (process.env.EVN_CONFIG === 'test' && process.env.NODE_ENV === 'test') {
13       // 測試環境
14       Vue.prototype.baseConfig = data[1]
15     } else {
16       // 開發環境
17       Vue.prototype.baseConfig = data[2]
18     }
19     new Vue({
20       el: '#app',
21       router,
22       components: { App },
23       template: '<App/>'
24     })
25   })
26   .catch((error) => {
27     console.log(error.result)
28   })

 最后,前端請求后台接口時

import request from '../../config/axios'
import Vue from 'vue' const basetConfig = Vue.prototype.baseConfig
// 查詢合同信息
export function queryContractInfoProc(data) {
  return request({
    url: basetConfig.genexusUrl + '后台接口',
    method: 'post',
    data
  })
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM