在同一端口上运行 Angular 和 ASP.NET Web API

2024-02-25

我目前正在使用 Angular 向运行 ASP.NET 的 API 服务器发出 API 调用。但是,对于角度开发,我有一个跨域问题,我使用的是 localhost。在生产版本中,它们都将使用 IIS 在同一域下运行。

有没有办法在 ASP.NET 的同一端口上运行 Angular 应用程序?

P.S.:我也对解决这个问题的其他替代方案持开放态度。


我也遇到了同样的问题,然后我发现这篇文章在媒体上 https://medium.freecodecamp.org/the-best-ways-to-connect-to-the-server-using-angular-cli-b0c6b699716c,希望这对你有用。

编辑: 实际上我使用的解决方案来自那篇文章。

这个想法是,您不能在同一端口上“发布”API 和 Angular 应用程序,但您可以使用代理从 Angular 应用程序连接到另一个端口上的 API。

Update: 抱歉这么久没有回复。

要处理 cors 问题(在本例中),您可以使用代理ng serve命令。

例如,就我而言,我使用了proxy.conf.json像这样的文件:

{
  "/api/*": {
    "target": "http://localhost:3000",
    "secure": false,
    "pathRewrite": {"^/api" : ""}
  }
}

此代码将每个请求的 url 重写为/api/* to the http://localhost:3000你的 api 正在监听的地方。

因此,为了说明这一点,如果您在角度中提出如下请求http://localhost:4200/api/users它将被重定向/重写到http://localhost:3000/api/users解决cors问题。

现在,运行 Angular 应用程序的方式有所不同。

ng serve --proxy-config proxy.conf.json
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在同一端口上运行 Angular 和 ASP.NET Web API 的相关文章

随机推荐

  • 如何让 Visual Studio Code 真正显示所有 TypeScript 类型错误?

    在我的 TypeScript React 项目中 react scripts start 显示的类型错误未在我的 Visual Studio Code IDE 中内联显示 大多数类型错误实际上都是内联显示的 但不是全部 原因可能是什么 如何
  • 嵌套指令打破了角度

    每当我在其内部使用指令时 页面就会冻结 并消耗越来越多的 CPU 和 RAM 直到选项卡挂起 我有的是这个 Application Directives directive somed function return restrict E
  • 无法使用 Jersey 服务器加载 JSP 页面

    我的 Web 服务使用 jersey 2 4 无法让主页加载 index jsp 我制作了一个 IndexService POJO 来尝试从那里加载它 但这不起作用 我想只使用主页 而不是使用 IndexService POJO 已到达 P
  • 在Python中从另一个文件导入变量

    我已经声明了一些变量并用一些值初始化它们variables py flag 0 j 1 我想在另一个文件中使用这些值main file py import variables if flag 0 j j 1 但是我收到以下错误 NameEr
  • 如何获取可用 NSFont 系列的列表?

    如何获取可用 NSFont 系列的列表 最好使用 fontName 等效项 NSLog NSFontManager sharedFontManager availableFontFamilies description Gives Abad
  • r dplyr group_by 值折叠并粘贴

    我有一个看起来像这样的数据集 Id Subject Date Vitals Value 10 John 2001 05 29 HeartRate 65 10 John 2001 05 29 HeartRate 68 10 John 2001
  • 在 python 中按第一(或第二,或其他)列对文件进行排序

    这似乎是一个非常基本的问题 但我是Python新手 在花了很长时间尝试自己寻找解决方案之后 我认为是时候询问一些更高级的人了 所以 我有一个文件 样本 ENSMUSG00000098737 95734911 95734973 3 miRNA
  • 当FormArray嵌套在另一个FormArray中时如何获取FormArrayName?

    参考 https angular io docs ts latest api forms index FormArrayName directive html https angular io docs ts latest api form
  • Python:从 Ipywidget 按钮重置 Matplotlib

    在 Jupyter 笔记本中使用 iPyWidgets 和 Matplotlib 时 即使有多个子图以及带有多个滑块的多个变量 也很容易获得实时更新的图形 只需设置一个interact包含激活的绘图函数以及两个滑块变量的构造函数 pylab
  • 如何获取符号链接的绝对路径?

    如何获取符号链接的绝对路径 如果我按照以下方式进行 char buf 100 realpath symlink buf 我不会获得符号链接的绝对路径 但我会获得此符号链接链接到的绝对路径 现在我的问题是 如果我想获取符号链接本身的绝对路径怎
  • 连接两列中具有相同值的两行

    这是我的桌子的打印屏幕图像 我有一个名为 table 的 MySQL 表 当我写下 SELECT FROM table 在 while 循环中 我想获得一次相同的 fikraNo 和 maddeNo 值 但是如果 fikraNo 和 mad
  • 使用 ODBC 连接 SQLite,无需注册数据库

    是否可以在 C 中连接到 SQLite 并使用 ODBC API 而无需在 ODBC 中注册数据库 我有使用 ODBC 与数据库通信的代码 但不想使用 SQLite 进行重写 也不想注册新的 ODBC 连接 您应该能够在不更改任何代码的情况
  • firebase中的数据排序

    我正在存储一个score对于我在 firebase 中的应用程序的每个用户 user name score 我想显示一个排行榜 其中包含前 10 位用户的姓名和分数 并保持实时更新 实现这一目标的最佳方法是什么 查看排行榜示例以了解执行此操
  • 如何获取所有Windows组?

    我写这个是为了获取特定用户所属的组 DirectoryEntry AD new DirectoryEntry WinNT Environment MachineName computer DirectoryEntry user AD Chi
  • 用户控件回发在更新面板中不起作用

    我有一个带有更新面板的母版页
  • 到同一个 Razor 页面的多个路由

    背景 我的 Asp Net Core 3 1 网站中有一个名为 SignupAndApply 的剃刀页面 它实际上是注册身份页面的复制和粘贴 但是 有一些附加字段 允许可选的 applyid 作为路由的一部分传递 如果我传递 applyId
  • 如何将 Angular CLI 升级到最新版本

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 Using ng version I got 角度 cli 1 0 0 这不是可用的最新
  • 改进您的构建过程

    或者 当一开始就没有太多的构建流程时 实际上建立了一个构建流程 目前 这几乎就是我的团队面临的情况 我们主要进行网络应用程序开发 但目前不进行桌面开发 即使对于我们普通的应用程序 软件部署也是丑陋且笨拙的 而且在我加入这个团队 和公司 的两
  • 是否可以在我的网络应用程序中使用 Google Talk 的音频聊天服务?

    我正在用 PHP 构建一个应用程序 我想知道是否可以在我的 Web 应用程序中使用 Google Talk 的音频聊天服务 是的你可以 Google 将 Google talk 定义为 开放式 IM 服务 以便您可以将自己的客户端应用程序连
  • 在同一端口上运行 Angular 和 ASP.NET Web API

    我目前正在使用 Angular 向运行 ASP NET 的 API 服务器发出 API 调用 但是 对于角度开发 我有一个跨域问题 我使用的是 localhost 在生产版本中 它们都将使用 IIS 在同一域下运行 有没有办法在 ASP N