【问题标题】:Best way to deploy/publish Angular project with WEB Api backend使用 WEB Api 后端部署/发布 Angular 项目的最佳方式
【发布时间】:2022-07-26 04:27:41
【问题描述】:

我正在做我的第一个 Angular 项目。带有 WEB Api 后端的 Angular 前端都可以按预期在本地工作,是否有最佳实践或最佳方法可以一次性为 IIS 部署前端和后端?我宁愿不需要单独部署它们。

【问题讨论】:

  • 我们通常将构建输出部署到 IIS 网站的根目录,并在我们部署 Web API 后端的子文件夹(大部分是 /api)中创建一个虚拟应用程序。但是,需要两个单独的部署。我建议不要将 Angular SPA 打包到 ASP.NET Core 项目中,因为必须分离可以独立开发/更新的代码库具有更好的灵活性。
  • 谢谢,想了想,还是分开比较有意义。但是,我在从 Angular 应用程序调用 WEB API 时遇到问题,这两个应用程序现在都在 IIS 上的单独部署中。
  • IIS中无论是站点还是站点下的子应用,都无法一次性部署,除非使用web deploy编写通用脚本实现一键部署。 having issues calling the WEB API from the Angular app 独立站点使用独立域,这是 CORS 错误吗?还是其他错误?
  • 正如@BruceZhang 提到的,如果应用程序和 API 托管在不同的来源下,CORS 可能是连接问题的根源。如果您将 API 托管在应用程序下方的虚拟应用程序中,则可以避免这种情况。否则,您需要配置您的 API 以允许来自应用程序源的请求(请参阅docs.microsoft.com/en-us/aspnet/core/security/…)。
  • 我遇到了 CORS 错误,我将以下内容添加到了我的 WebAPI Program.cs 文件中,并且在我发布后它就可以工作了。谢谢大家的回复。 app.UseCors(builder => builder .AllowAnyOrigin() .AllowAnyHeader() .AllowAnyMethod() );

标签: c# angular .net-core iis deployment


【解决方案1】:

我遇到了一个 CORS 错误,我将以下内容添加到我的 WebAPI Program.cs 文件中,并且在我发布后它就可以工作了。谢谢大家的回复。

app.UseCors(builder => builder.AllowAnyOrigin().AllowAnyHeader().AllowAnyMethod());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-24
    • 1970-01-01
    • 2019-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多