【问题标题】:ASP.NET Core Web API vs ASP.NET Core ApplicationASP.NET Core Web API 与 ASP.NET Core 应用程序
【发布时间】:2018-11-30 14:38:12
【问题描述】:

首先,如果这是一个微不足道的问题,我深表歉意,但我对我正在阅读的信息感到非常困惑。我已经推迟在这里发帖,因为我觉得我的问题太宽泛了,但我找不到明确的答案。我是一名 C++ 开发人员,但我想从事 Web 开发。

我的最终目标是拥有一个可供网络应用和移动应用使用的网络 API。我想先通过开发 Web API 和 Web 应用程序来确定结构,然后再将其扩展到移动平台。

我的目标是有 4 个独立的部分 - 数据库 -> WebAPI -> Web App -> 移动应用 所有这些都受用户名/密码等保护。

我已决定使用 ASP.NET Core,但在创建应用程序时,我在 Visual Studio 中有两个选项 - ASP.NET Core 应用程序或 Web API。我尝试创建一个 Web API 和一个单独的核心应用程序,但不知道如何调用 Web API。我也尝试过创建一个核心应用程序,因为看起来我应该能够在一个项目中做我想做的一切,但我担心 Web API 的分离程度不足以从移动应用程序调用。

我将使用包含敏感信息的数据库,因此显然希望保护对 Web API 和 Web/Mobile 应用程序的访问。我一直在观看有关身份的 Pluralsight 课程,但我读到它不适用于 Web API。

基本上,当我认为我的最终目标应该相对容易实现时,我会感到非常困惑。如果有人能给我任何关于我需要使用哪些技术的指示,那就太好了。

【问题讨论】:

  • 您在开发过程中是否取得了进展并且可以报告您是如何实现它的?我即将开始同样的事情。

标签: xamarin asp.net-web-api asp.net-core


【解决方案1】:

ASP.NET Core WebAPI 专为构建 REST-ful 服务而设计。

ASP.NET Core 应用程序用于创建既返回视图又返回数据的 Web 应用程序(它类似于标准框架中的 Asp.NET MVC)。

选择哪个实际上取决于您要使用的 WebApp 类型。如果您打算使用一些 SPA 框架,则不需要在服务器端生成视图的机制 - WebAPI 是一个不错的选择,否则选择 Application。 Here你可以找到更多关于差异的细节。

出于安全考虑,WebAPI 没有问题。它提供了许多机制来保护您的 API 并根据用户的身份限制对方法的访问。请以this article为例。

【讨论】:

  • 感谢您的回复。我的目标是通过 Azure 托管 web api。我已经为 Web 应用程序提供了一个域,并将使用 Azure 来托管它,但我想它们将在不同的服务器上,所以从你所说的我应该创建一个 Web api,然后为 Web 应用程序使用一个 SPA 框架?由于 web api 和视图将位于不同的服务器上。
  • @CraigWake 实际上你可以在同一个 WebAPI 中托管 SPA。这是one of the articles 怎么做
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-28
  • 2021-10-12
  • 1970-01-01
  • 2016-10-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多