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

Angular11+.NET Core3调用UseProxyToSpaDevelopmentServer报主动拒绝连接如何解决

报错根因

你代码中spa.UseProxyToSpaDevelopmentServer("http://localhost:4200")是.NET Core 内置的SPA中间件配置,作用是将前端页面相关的请求代理转发到Angular的本地开发服务器,4200是Angular开发服务的默认端口。
你遇到的连接拒绝报错,本质是Angular开发服务没有启动,后端转发请求时找不到目标服务,和SQL Server没有关联。

正确启动流程

你确实遗漏了Angular前端服务的启动步骤,按以下顺序操作即可:

  • 打开终端进入项目的Angular前端根目录(一般是名为ClientApp的文件夹,该目录下会有package.json、angular.json等Angular配置文件)
  • 如果是首次运行项目,先执行依赖安装命令:npm install
  • 执行Angular开发服务启动命令:ng serve,启动成功后终端会明确提示服务运行在http://localhost:4200
  • 保持Angular服务的终端不关闭,另开一个终端启动.NET Core 后端服务即可正常访问
可选优化方案

如果不想每次手动启动两个服务,可以修改Startup.cs的SPA配置,让.NET后端启动时自动拉起Angular开发服务,替换原有代理配置即可:

// 替换原有的spa.UseProxyToSpaDevelopmentServer代码
spa.Options.SourcePath = "ClientApp"; // 此处替换为你实际的前端项目相对路径
if (env.IsDevelopment())
{
    spa.UseAngularCliServer(npmScript: "start");
}

该配置仅建议在开发环境使用,生产环境打包部署时不需要启动Angular开发服务,直接用打包后的静态文件即可。

内容的提问来源于stack exchange,提问作者misuk

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 08:57:00