我是Xamarin并使用Office365 API的新手。我试图通过创建一个Xamarin.Forms应用程序来从Office365服务器读取数据,一旦用户通过身份验证。如何通过Office 365 API在Xamarin.forms中存储经过身份验证的状态
我一直在下面的教程,并结束了与以下登录页面
namespace CMLender.Pages
{
public partial class Login
{
public IPlatformParameters PlatformParameters { get; set; }
public Login()
{
InitializeComponent();
LoginButton.Clicked += LoginButton_Clicked;
}
protected override void OnAppearing()
{
App.ClientApplication.PlatformParameters = PlatformParameters;
base.OnAppearing();
}
private async void LoginButton_Clicked(object sender, EventArgs e)
{
try
{
AuthenticationResult ar = await App.ClientApplication.AcquireTokenAsync(App.Scopes);
}
catch (MsalException ex)
{
WelcomeText.Text = ex.Message;
}
finally
{
await Navigation.PushAsync(new MainTab());
}
}
}
}
一旦他们通过带到Office365用户认证页面的登录按钮,用户点击。一旦他们用有效的用户名和密码登录,应用程序就会加载MainTab XAML页面。
现在,这是我的问题开始的地方。我MainTab页面看起来是这样的:
namespace CMLender.Pages
{
public partial class MainTab : ContentPage
{
public MainTab()
{
InitializeComponent();
DisplayMessage();
}
private async void DisplayMessage()
{
try
{
AuthenticationResult ar = await App.ClientApplication.AcquireTokenAsync(App.Scopes);
WelcomeText.Text = $"Welcome {ar.User.Name}";
}
catch (MsalException ex)
{
WelcomeText.Text = ex.Message;
}
finally
{
WelcomeTextTwo.Text = "BlaBlaBlab";
}
}
}
}
我希望这个页面写的登录用户名的标签(它),但是首先,用户必须重新进行身份验证。
我很确定这是AcquireTokenAsync任务,但它是我能够使其工作的唯一方法。如何存储用户已经过身份验证的信息并访问其用户名?
我已经完成了所有可以阅读的内容,但是这些信息在这个主题上看起来如此广泛。