zoukankan      html  css  js  c++  java
  • asp.net core spa应用(angular) 部署同一网站下

      需求:现在一个应用是前后端开发分离,前端使用angular,后端使用 asp.net core 提供api ,开发完成后,现在需要把两个程序部署在同一个网站下,应该怎么处理?

      首先可以参考微软的官方文档  Use the Angular project template with ASP.NET Core

       .net core 对前后端的部署还是很友好的,主要处理步骤如下:

       1.配置服务 在startup中的 ConfigureServices()中声明

       

       services.AddSpaStaticFiles(configuration => {
                    //angular文件所在文件夹
                    configuration.RootPath = "client";
                });

    2. 调用服务,在startup中的 Configure() 方法中声明

       app.UseStaticFiles();
                // spa files
                app.UseSpaStaticFiles();
         
                app.UseMvc(routes =>
                { 
                    routes.MapRoute(
                        name: "default",
                        template: "{controller}/{action=Index}");
                    
                });
                //使用服务
                app.UseSpa(f =>
                {
                    //f.Options.SourcePath = @"client";
                    if (env.IsDevelopment())
                    {
                // 本地调试用 f.UseProxyToSpaDevelopmentServer(
    "http://localhost:4200"); } });

    这里要注意, app.usespa要放在 app.usemvc后面,否者前端是调不到后端api的。

    3 部署: 

      前后端分别发布出来,在iis中把后端部署好,同时,在后端的文件夹中建立一个 “client” 文件夹(第一步中的配置),把前端发布好的文件放置到该目录中就可以了。

  • 相关阅读:
    xpath教程-逐层检索和全局检索 转
    xpath教程-通过ID和Class检索 转
    minianaconda3安装
    爬取表情
    进程线程(转)
    centos 安装docker方法2
    关于Dockerfile
    根据指定规则生成游戏选项编码实战
    分布式对象存储 读书笔记
    muduo 的windows下的编译
  • 原文地址:https://www.cnblogs.com/jidanfan/p/11546490.html
Copyright © 2011-2022 走看看