Azure 应用服务移动 + Web

Azure App Service Mobile + Web

我正处于评估和设计移动应用程序(通过 Xamarin)和 Web 应用程序(可能通过 Angular)的潜在架构的初始阶段。我认为 Azure App Service 绝对是托管这些服务的合适选择。我对如何在 Azure 中实际实施这样的解决方案感到困惑。我想要的本质上是一个移动应用程序和 Web 应用程序,它们可以与充分利用 Azure 应用程序服务的中央 API 进行通信。

我了解这 4 种服务(移动、Web 应用程序、API 和逻辑)之间确实没有区别。我 认为 我想开始创建移动应用程序服务并使用快速启动选项构建 Xamarin.Forms 和 API 起点。我假设这会将应用服务设置为本质上是一个 Web API,配置为使用移动应用功能,例如离线模式、推送通知等。

让我感到困惑的部分是如何将 Angular(或类似的前端框架)网络应用程序添加到服务中。我不太确定我是否能够将它添加到该移动应用程序服务中,或者我是否需要创建另一个包含单页应用程序的应用程序服务。我可以从 Web 应用程序 (ASP.NET MVC) 服务开始,但我不想为 Web 和移动应用程序维护单独的控制器(或失去移动应用程序的好处)。

有没有人对正确的配置有任何建议或经验来设置我想要的东西?

I am not too sure if I am able to add it to that Mobile App service or if I need to create another app service containing a single page application.

您可以 create a Azure mobile app backend 为您的 Xamarin.Forms 应用程序。对于SPA或其他Web应用程序(例如ASP.NET MVC等),您可以在您的移动应用程序下设置IIS虚拟目录,并将您的SPA部署到虚拟目录,如下所示:

样本:https://bruce-mobile.azurewebsites.net/services/index.html

详情请参考Deploying multiple virtual directories to a single Azure Website

据我了解,移动应用程序充当 Web API 并提供内置功能(Authentication/Authorization、离线同步、推送通知、客户端 SDK 等)。对于 Windows 和 Xamarin 应用程序,您可以使用 Azure 应用程序服务移动应用程序的托管客户端库,有关更多详细信息,您可以参考 here. For javascript/HTML, you could use the javascript client library 与您的移动应用程序。

我会使用移动应用程序作为我的客户端应用程序和 Web 应用程序的中心 API,因为您可以在移动应用程序下定义自定义 APIs,有关更多详细信息,您可以参考 adrian hall 的关于 Custom HTTP Endpoints.

的书