azure - 移动服务与 ASP.NET Web API

标签 azure asp.net-web-api azure-mobile-services

我经常听说 Web API 和移动服务可以互换使用,因为它们提供许多相同的功能。这两种技术之间有哪些主要区别和相似之处?为什么我要使用其中一种技术而不是另一种?

最佳答案

移动服务与 Web API

移动服务支持两种类型的后端:Javascript (Node) 和 C# (WebAPI)。

对于 Node.js 开发者

对于任何非 .NET 开发人员,我鼓励他们使用 Node,因为它非常流行并且许多开发人员已经熟悉它。 Node 后端的使用也更加简单。 Here is a tutorial关于如何开始。

对于 .NET 开发人员

Web API 需要 ASP.NET 解决方案。移动服务将为您构建项目,但从那里您还有更多工作要做,并且您需要熟悉 .NET。

我的理解是,与 Node.js 相比,使用 WebAPI 可以更好地控制解决方案。如果您实际上正在为您的服务构建自己的 API,而不是仅仅通过 REST 接受 HTTP 动词。在这种情况下,WebAPI 是更好的解决方案,因为 Azure 提供了 API 管理设施。

离线支持

WebAPI (.NET) 方法也提供离线功能。您基本上是在本地项目中获取所有移动服务,因此您可以进行调试。尽管您可以通过 git 端点下载脚本,在 VS 中编辑,然后轻松部署,但 JavaScript (Node.js) 版本没有完整的离线故事。换句话说,您不必转到浏览器来编辑所有 JavaScript。

服务级别协议(protocol) (SLA)

基本和标准移动服务:99.9% 网站(Web API):99.9%仅在使用多个实例时(需要基本或标准计划)

这意味着移动服务的 SLA 达到 99.9%,最低价格为每月 15 美元。

网站 (Web API) 最低费用为 112 美元/月,因为需要 2 个最小的实例。 因此,任何需要/想要 SLA 的人都可以通过移动服务节省资金。

身份

移动服务拥有针对主要社交网络和 AAD 的设置。 可以对 Web API 进行编码和设置,以使用 AAD 中的身份并将其绑定(bind)到其他服务中。 这意味着对于许多开发者来说,移动服务将更容易设置。

推送通知

移动服务具有内置的基本推送和通知中心。 Web API 可以使用通知中心。

备份

网站有 backup feature.此外,您可以将 Azure 网站(Web API 项目)连接到本地 Git 存储库或 one hosted on GitHub as well.

移动服务 (JS) 使用 Azure 中自动创建的 Git 存储库,对于 .NET,您无论如何都应该使用源代码管理。

预定作业

移动服务具有调度程序(只能按计划或按需运行。)。

Web API 具有 WebJobs,它可以按需或按计划连续运行。

ASP.NET 5

如果您想了解新版本 ASP.NET 5 中的变化,this video on Channel 9斯科特·汉塞尔曼 (Scott Hanselman) 将为您提供更好的图片。

关于azure - 移动服务与 ASP.NET Web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32427474/

相关文章:

c# - 如何处理 Xamarin Forms 的 Azure 移动应用程序中的用户 token ?

javascript - 在 node.js 中运行多个 MSSQL 查询

azure - 以编程方式安排 Azure 函数的一次性执行

azure - 是否可以配置 IIS(特别是在 Azure 中)以使用 HistoryLocation?

Azure 应用服务无法启动,因为它无法使用 ASP.NET Core 找到 swagger 文档 xml

c# - 如何从 C# 类生成 angularjs 模型

c# - 无需用户凭据即可从 Azure AD 获取访问 token

azure - 来自 Azure B2C 的注册事件

c# - 使用 RestSharp 和 WebAPI 进行数据流传输