proxy配置代理,配置多個代理小結


1、路徑中含有'/dev-api/admin/product'都會匹配到第一個代理,需要注意的是如果把第二個代理放到最上面那么所有請求會被匹配到其target路徑下
2、實際路徑是:target+ baseURL(如果重寫axios文件配置)+url(api文件) - pathRewrite 

實際請求:

1、http://39.98.123.211:8170/admin/acl/index/login

2、http://39.98.123.211:8216/admin/product/baseTrademark/1/10

配置后實際路徑: target+baseURL+url(api.js) - pathRewrite (重寫路徑)    == >    http://39.98.123.211:8216/dev-api/admin/product/baseTrademark/1/10    =》將路徑中   /dev-api變為空

                  ====>  http://39.98.123.211:8216/admin/product/baseTrademark/1/10

 

request.js

 

 

import axios from 'axios' import { MessageBox, Message } from 'element-ui' import store from '@/store' import { getToken } from '@/utils/auth'

// create an axios instance
const service = axios.create({ baseURL: "/dev-api", 
timeout: 5000


})
vue.config.js
proxy: { '/dev-api/admin/product': { target: 'http://39.98.123.211:8216', pathRewrite: { '^/dev-api': '' }, ws: true, //用於支持websocket
        changeOrigin: true, // 用於控制請求頭的host值
        secure: false, //http為false ,https為true
 }, '/dev-api': { target: 'http://39.98.123.211:8170', pathRewrite: { '^/dev-api': '' }, }, },

api.js

import request from '@/utils/request' 
  export function login(data) {
    return request({
      url: '/admin/acl/index/login',
      method: 'post',
      data
    })
  }
export const tradeMarkList = (page,limit) => request({ url: `/admin/product/baseTrademark/${page}/${limit}`,
  method: 'get', })

 


免責聲明!

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



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