node动态设置代理使用vue

54 阅读1分钟

1、通过getUrl方法从文件获取代理地址

`const getUrl = () => {
  const readProxy = fs.readFileSync(`${process.cwd()}/url.json`, 'utf8');
  const proxyList = JSON.parse(readProxy);
  const urlObj = proxyList.find(item=>item.active);
  const proxyHost = urlObj?.url??'https://www.baidu.com/';
  console.log('当前代理Host:', proxyHost);
  return proxyHost;
};`

2、代理中使用使用geturl

`proxy: {
  '^/test/': {
    target,
    router: getUrl,
    changeOrigin: true,
    pathRewrite: {
      '^/test': '/test',
    },
  }}`

3、url.json配置文件

[
    {
        url:'https://www.baidu.com/',
        desc:'百度',
        active: true,
    },
    {
        url:'https://juejin.cn/',
        desc:'掘金',
        active: false,
    }
    ...
]

4、需要使用那个配置的代理地址直接将active设置为true