Azure API App如何为Mobile和Web使用单个托管api

时间:2016-08-20 22:38:32

标签: azure asp.net-web-api xamarin azure-mobile-services azure-api-apps

此问题与以下问题相关,但不是同一个问题

How can i integrate Azure Mobile App win Azure API app

How to combine azure AppServices API, Mobile and Web apps

我一直在尝试设置一个API,用于我的移动应用程序(Xamarin)和Web应用程序(Angular或ASP.NET MVC)。我想使用" Azure App Service"。 据我所知,Azure应用服务中有三件事

  1. 网络应用
  2. 移动应用
  3. API应用
  4. 我想选择" API APPS"因为我想使用我现有的ASP.Net Web Api,并希望将Api暴露给招摇。此外,我想与移动应用程序以及Web应用程序共享此API。

    基于文档" API APPS"可以由移动和Web客户端使用.Web客户端没问题,但我需要使用Azure移动功能(例如单一身份验证,通知,与Sql lite的离线同步等),以便在移动应用程序中轻松实现。

    根据上述问题和文档的答案,我可以将移动app back-end packages安装到ASP.Web API并将其托管为"移动APPS"。所以我可以使用与移动相关的所有功能。

    1. 我的问题是如果我安装移动后端,我可以使用相同的API 对于Web前端?因为我将其托管为"移动APPS"服务 不是" API APPS"服务。

    2. 如何与移动客户端(具有移动后端功能)和Web客户端共享单个API主机?

    3. 是否可以安装Mobile后端软件包并托管 API作为" API APPS" ,然后在Xamarin应用程序中使用Mobile SDK,在Web APP中使用HTTP客户端或其他客户端使用相同的API?

1 个答案:

答案 0 :(得分:4)

如果要使用Azure Mobile客户端SDK,尤其是脱机同步等功能,则需要使用Azure Mobile server SDK。它是一组简单地扩展ASP.NET Web API的NuGet包。

如果您想要推出自己的移动客户端,或者只是使用身份验证功能,那么您就不需要使用Azure Mobile服务器SDK,而只能使用Web API。

如果您确实想使用服务器SDK,我们提供了示例,说明如何从Web客户端使用此TableController API: