Azure WebApi vs Azure Mobile Service vs

I programmed a lot in asp.net mvc web applications. Now I want to write cross-platform mobile applications with a corridor for the interface and azure for the backend.

I doubt whether to use azure mobile services or WebAPI, because I want the power and freedom of WebAPI, but the convenience of azure mobile services. I donโ€™t understand concepts like authentication, push notifications, etc.

My main goal is to focus on the application logic, interface and backend with a significant weight of this logic in the backend. For this I have great doubts.

first. I see both good mechanisms in AMS and WebAPI for external authentication, but not for managing my own authentication. What is the best way to manage your own authentication? Azure Active Directory Solution?

2nd I intend to create well-defined API methods that return exact data (json), rather than an api request for a restat (odata) request. Is this the best for you, WebAPI or AMS?

3rd I have experience with SQL Server, its relationships and Entity infrastructure, but I donโ€™t want to learn and use NoSQL technologies, which is better? (However, Iโ€™m uncomfortable, I canโ€™t use many, many relationships in NoSql).

Thank you very much.

+6
source share
1 answer

there is no real general answer for this, so take them as tips.

First, keep in mind that AMS and WebApi are not that far. The AMS IS project is a WebApi project with some helpers inside so that you can comfortably work with related services (push notification, table entities), but you will lose a little control over your application.

The choice depends on your needs.

  • Azure Active Directory IS solution, but there is much more. You can use your preferred structure. AMS has a fairly integrated login with the most famous social network and active azure directory, and it is very easy to set up.

  • I would suggest AMS. It will be easier to set up and save.

AMS is just castrated by WebApi. To get all these services for you, you cannot, for example,

  • Customize the launch of your application
  • Use dependency injection infrastructure
  • Running background tasks

And other similar things. Hope this helps!

+5
source

Source: https://habr.com/ru/post/975284/


All Articles