为什么我的vue.config.js代理不起作用?

时间:2019-06-02 21:25:08

标签: vue.js config vue-cli-3

我有一个vue cli 3.5.0项目,正在尝试添加代理,但是我无法使其正常工作。服务器在:5000上运行,客户端在:8080上运行。在下面您可以看到我的代理。但是它继续使用:8080而不是:5000

vue.config.js

module.exports = {
    devServer: {
      proxy: {
        '/api': {
          target: 'http://localhost:5000',
          ws: true,
          changeOrigin: true
        }
      }
    }
  }

这是我如何调用请求的示例

const url = '/api/races/'
const config = {
    headers: {'Authorization': "Bearer " + localStorage.token}
}

class RaceService {
    // Get Races
    static getRaces() {
        return new Promise(async (resolve, reject) => {
            try {
                const res = await axios.get(url)
                const races = res.data
                resolve(races)
            } catch (err) {
                reject(err)
            }
        })
    }
}

有人可以帮我吗? api请求需要使用:5000而不是:8080

3 个答案:

答案 0 :(得分:1)

您必须使用“ ^ / api”代替“ / api”

答案 1 :(得分:0)

检查您的vue.config.js文件位置,它不应位于src文件夹中,而应位于项目的根目录中,有关详细信息,请参见:This Link

答案 2 :(得分:0)

尝试重新加载你的vue服务器,如果你还没有这样做

直到您启动和停止 vue 服务器 因为在你这样做之前 vue.config.js 没有被加载,

这样做

在您执行 npm run serve 的终端中使用 Ctrl+C 然后重新开始使用 npm run serve