是否可以从本地服务结构群集内部使用UseProxyToSpaDevelopmentServer?

时间:2018-11-19 20:47:20

标签: angular asp.net-core-2.1

我试图从本地服务结构群集的内部使用UseProxyToSpaDevelopmentServer选项,但没有任何结果。当我尝试通过路由http://localhost:9000/UI/访问SPA应用程序时,我实际上没有收到服务器的任何请求。我正在使用asp.net core 2.1角度模板。我使用Razor来创建初始的Angular页面。

我的Startup类如下:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        else
        {
            app.UseExceptionHandler("/Error");
        }

        app.UseStaticFiles();
        app.UseSpaStaticFiles();

        app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller}/{action=Index}/{id?}");
        });

        app.UseSpa(spa =>
        {
            // To learn more about options for serving an Angular SPA from ASP.NET Core,
            // see https://go.microsoft.com/fwlink/?linkid=864501
            spa.Options.SourcePath = "ClientApp";

            if (env.IsDevelopment())
            {
                spa.UseProxyToSpaDevelopmentServer("http://localhost:4200/");
            }
        });
    }

我肯定是在开发模式下运行应用程序。 我试图通过使用ng serve命令启动基本节点js服务器以及angular应用程序来获取任何请求,但是正如我所说的,没有结果。

1 个答案:

答案 0 :(得分:2)

我实际上知道了。问题是app.UseSpa之后是app.UseMvc。由于我的剃须刀页面名为Index.cshtml,因此MVC接管了Spa请求。