gpt4 book ai didi

asp.net - 适用于移动应用程序和 Web 管理面板的 Azure 移动应用服务或 Web 应用服务

转载 作者:行者123 更新时间:2023-12-03 04:24:14 24 4
gpt4 key购买 nike

我需要建议,因为我是 .net 和 azure 的新手,我正在为一个项目创建一个架构,该项目拥有移动应用程序、基于 Web 的管理面板和网站。

我计划在 Azure 中托管所有内容。我正在 Xamarin 中创建应用程序。应用程序需要具有推送通知、离线同步等由移动应用服务提供的功能( Controller 继承自TableController)。

我想创建 1 个数据库,供所有 3 个模块使用。我已经创建了移动应用程序服务和数据库。移动应用程序正在按预期使用它。现在我想创建一个网站和基于 Web 的管理面板并使用相同的数据库。这可能吗?

最好的方法是什么?我应该创建一个 Web 项目并通过 REST API 对数据执行操作吗?并将此 API 用于移动应用程序和基于 Web 的后端?

我对 azure 的不同服务以及该使用哪一项感到非常困惑。我应该使用 .Net Core 还是 .Net。我需要知道最好的方法。

编辑 1:

到目前为止,这就是我所做的,我需要知道当项目变得复杂时这是否能正常工作。我通过 Azure 移动应用程序创建了数据库和后端。现在我已经创建了一个.net MVC网站并使用RestSharp在其中进行CRUD操作。我使用以下代码来执行操作。请注意请求网址中的 /tables/ 部分。

        var client = new RestClient("http://xxxxxxx.azurewebsites.net");
var request = new RestRequest("/tables/request?ZUMO-API-VERSION=2.0.0", Method.POST);

string data = "{\"createdFor\":\"535862cf-e2b3-41de-99f9-88c47a77750c\",\"status\":\"IN_PROCESS\",\"createdBy\":\"7108147e-c11c-4d78-ac3d-d5d6c5eb78d0\",\"description\":\"Master room 5 door produces strange sound when opened or closed\",\"title\":\"Door Sounds Strange\"}";
request.AddHeader("Accept", "application/json");
request.Parameters.Clear();
request.AddParameter("application/json", data, ParameterType.RequestBody);

var result = client.Execute(request);
Console.WriteLine("Content " + result.Content);

获取和发布操作工作正常。这是个好方法吗?

提前致谢

最佳答案

正如官方文档提到的Mobile App Features :

  • 身份验证和授权(AAD、Facebook、Google、Twitter 和 Microsoft 帐户、自定义身份验证)
  • 数据存储(SQL 数据库、Azure 表存储等)
  • 离线同步
  • 推送通知(客户端 SDK 与 Azure 通知中心的注册功能无缝集成)
  • 客户端SDK(一套完整的客户端SDK,涵盖原生开发、跨平台开发等)

据我了解,如果移动应用程序提供的内置功能完全可以满足您的要求,那么移动应用程序更适合您,并且可以节省您的时间。对于Web API应用程序,您需要自己完成所有工作。

Now i want to create a website and Web based admin panel and use the same database. Is this possible ?

我假设您可以在解决方案下创建一个Azure移动应用程序(Mobile App)和一个Web应用程序(Azure Web App),并且您可以将DbContext相关类提取到共享类中图书馆。

Should i use .Net Core or .Net. I need to know the best way to do it.

.NET Core和.NET Framework的选择,可以引用官方文档 choosing-core-framework-server .

更新:

Can you please take a look at edit 1, and suggest if this is the right way or it can create a problem.

您的代码可以正常工作,因为移动客户端 SDK 仅封装了您提供的常见处理。

注意:

如果仅由经过身份验证的用户访问,您需要在登录后添加 x-zumo-auth header 以及 authenticationToken

此外,为了让您的 MVC 应用程序从您的移动应用检索数据(需要身份验证),您需要登录您的移动应用并检索 authenticationToken 以用于针对您的移动应用的后续请求。此时,除了Custom authentication ,否则你只能利用Client-managed authentication并使用JavaScript client library for Azure Mobile Apps在您的 MVC 应用程序中用于登录移动应用程序并检索 authenticationToken,然后您可以从前端发送请求或将 token 传递到后端。对于 SPA,您可以同时使用 Client-managed authenticationServer-managed authentication .

此外,Adrian Hall 写了一些关于 azure 移动应用程序开发的有用教程,您可以引用 Adrian hall's book .

更新2:

用于自定义身份验证 using an Identity Database ,您只需将用户名和密码传递给您的移动应用,然后它就会验证用户信息并生成 authenticationToken。对于 Auth0,您首先使用 Auth0 提供商登录,然后将 token 传递到您的移动应用程序。

My mobile application has its own signing up and sign in option with username and password.

对于来自 Auth0 的连接用户名-密码-身份验证,它将为您管理用户,而使用身份数据库时,用户将存储在您的存储中,您需要通过以下方式管理它们你自己。

根据我的理解,这两种方法都可以为您实现自定义身份验证,但您需要选择更适合您的场景的方法。

关于asp.net - 适用于移动应用程序和 Web 管理面板的 Azure 移动应用服务或 Web 应用服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45300067/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com