通过Azure移动后端连接Web应用

时间:2018-07-27 01:47:58

标签: azure asp.net-core azure-mobile-services

我有一个asp.net core 2.0 Web应用程序,我想通过Azure移动后端将其连接,怎么办?您能否提供详细的代码或要遵循的步骤。谢谢!

1 个答案:

答案 0 :(得分:1)

  

我有一个asp.net core 2.0 Web应用程序,我想通过Azure移动后端将其连接,怎么办?

以一种简单的方式,您可以利用Azure Mobile Client SDK与您的Azure移动后端进行通信,代码如下所示:

var mobileClient= new MobileServiceClient("https://{your-mobile-app-name}.azurewebsites.net");
var _toDoItemTable= mobileClient.GetTable<ToDoItem>();
await _toDoItemTable.InsertAsync(toDoItem);

您可以关注How to use the managed client for Azure Mobile Apps和Adrian关于The Mobile Client的博客的详细信息。

此外,您可以使用HttpClient来访问您的Mobile表/ API,可以遵循THE HTTP TABLE INTERFACE的详细信息,也可以将Mobile Client与fiddler一起使用以捕获发送到您的移动后端的详细请求,以便使用HttpClient手动构建请求

此外,如果您的移动后端需要授权访问,则需要在无需用户交互的情况下处理身份验证。因此,我假设您可以为移动后端利用Custom authentication来生成authenticationToken并返回到客户端以进行需要授权的后续请求。访问授权资源的请求将如下所示:

GET https://<your-mobile-app-name>.azurewebsites.net/tables/todoitem
Header x-zumo-auth:"<authenticationToken-generated-by-your-mobile-backend>"

此外,如果您的.Net Core Web应用程序使用社交帐户(例如AAD,Facebook,Google,Microsoft帐户,Twitter)进行身份验证,则可以利用Authentication and authorization in Azure App Service,然后可以针对您的请求显式发送请求移动后端,用于在您的.Net Core Web应用程序中获取authenticationToken,如下所示:

POST https://<your-mobile-app-name>.azurewebsites.net/.auth/login/<provider-name> //e.g. google,microsoftaccount,facebook,twitter,aad
Body {"access_token":"<the-access-token-from-your-social-provider>"}