You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

配置代理后Vue+Django项目仍跨域?请求遭ECONNREFUSED错误

解决Django + Vue开发代理ECONNREFUSED错误

核心问题分析

你遇到的ECONNREFUSED错误,本质是Vue开发代理无法连接到Django服务,结合你的配置来看,主要有两处关键问题需要修正:

具体修复步骤

1. 确认Django服务正常运行

首先检查Django是否在localhost:8000启动:

  • 执行命令启动Django:python manage.py runserver
  • 在浏览器访问http://localhost:8000,确认页面能正常加载(哪怕是默认的Django欢迎页)

2. 修改Axios请求路径,触发代理

你的Axios请求写了完整的http://localhost:8080/api,这会直接请求Vue自身的服务,完全不会走代理逻辑。改成相对路径即可:

axios
  .get("/api")
  .then((response: any) => (this.players = response));

3. 可选:优化代理配置(提升兼容性)

如果后续需要更灵活的代理规则,可以把vue.config.js调整为更细化的配置,避免路径匹配问题:

const { defineConfig } = require("@vue/cli-service");
module.exports = defineConfig({
  transpileDependencies: true,
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:8000',
        changeOrigin: true,
        pathRewrite: { '^/api': '' } // 若Django的API没有/api前缀,需要删除这行或调整规则
      }
    }
  }
});

验证操作

  1. 重启Vue开发服务器:npm run serve
  2. 重新发起请求,检查是否能正常获取Django的API响应

内容的提问来源于stack exchange,提问作者Kevin B.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 20:17:29