Microsoft帐户不会使用 Azure 移动服务在 UWP 中完成身份验证



我有一个使用 Visual Studio 2017 构建的 C# UWP Windows 应用程序,我正在添加Microsoft帐户身份验证,按照此处的文章进行操作。 应用在移动服务站点内进行身份验证,最终出现"连接到服务"对话框,该对话框托管移动服务站点中的页面,显示"你已成功登录",但应用中没有任何反应。 当我关闭对话框时,我收到一个异常,指出身份验证已被用户取消。

var user = await DataModel.MobileService.LoginAsync(
MobileServiceAuthenticationProvider.MicrosoftAccount, 
true);

有什么建议吗?

根据你的描述,我按照你提供的有关将应用的身份验证添加到我的 UWP 应用中的教程来检查此问题。我用uriScheme参数调用了LoginAsync方法,如下所示:

var user = await App.MobileService
.LoginAsync(MobileServiceAuthenticationProvider.MicrosoftAccount, "bruceapp");

用户登录后,我可以检索用户信息。

根据您的代码,我检查了SingleSignOnExtensions.LoginAsync,并找到了有关useSingleSignOn的描述如下:

使用单点登录

指示应使用单一登录。单一登录要求向Microsoft Azure 移动服务注册应用程序的包 SID,但它提供更好的体验,因为支持 HTTP Cookie,因此用户不必在每次启动应用程序时登录。

我搜索了网络,发现配置包 SID 来自已被 Azure 移动应用取代的 Azure 移动服务。有关更多详细信息,您可以参考此处。

另外,我在我这边测试了您的代码,发现登录窗口无法自动关闭,也无法检索用户登录信息。这是一个讨论类似场景的 git 问题。

此外,可以在 Azure/azure-mobile-apps-net-client 的问题上添加反馈。

最新更新