vue-cli 代理跨域不成功

按照之前项目一样写的,不知道为什么代理不能成功.

module.exports = {
  dev: {
    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
      '/api': {
        target: 'http://192.168.0.106:8080/',
        changeOrigin: true,
        pathRewrite: {
          '^/api':'/'
        }
      }
    },

    // Various Dev Server settings
    host: 'localhost', // can be overwritten by process.env.HOST
    port: 8087, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
    autoOpenBrowser: true,
    errorOverlay: true,
    notifyOnErrors: true,
    poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-

    /

dev.env.js

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {
  NODE_ENV: '"development"',
  API_HOST: '"/api/"'
})
打印 process.env.API_HOST
输出为 /api/
axios.defaults.baseURL = process.env.API_HOST

请求接口

Request URL: http://localhost:8087/api/qianbomall/app/login
前面没有被替换成api及相关

我这个问题应该是出在什么地方呢

阅读 2.7k
1 个回答

1.你现在配置的代理意思是在转发给后端的时候会去掉/api
2.所以你要确认你的后端的接口是不是有/api

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进