Xamarin.Forms 会话管理

Xamarin.Forms Session Management

我正在尝试使用 Xamarin.Forms 开发一个虚拟应用程序,我主要关注 UWP。 我有这个应用程序的登录功能,我需要管理会话。我正在使用一个基本的 Web 服务登录方法,它获取用户名和密码作为参数和 returns 一个访问令牌。我将此访问令牌用于此应用程序的 CRUD 操作。这就是我存储此访问令牌的方式。

Application.Current.Properties ["access_token"] = token.access_token;

因为我是 Xamarin 的新手,所以我很难理解会话管理。我将如何管理会话?会话何时过期以及如何过期?可能是什么安全问题?我怎样才能正确注销用户?

如有任何帮助,我们将不胜感激。

您可以使用 Settings Plugin for Xamarin And Windows.

此插件将特定属性直接保存到每个平台的本机设置 API(NSUserDefaults、SharedPreferences 等)。这确保了每个应用程序的最快、最安全和可靠的创建和编辑设置。此外,它适用于任何 Xamarin 应用程序,而不仅仅是 Xamarin.Forms.

从 Nuget 使用它 - Settings Plugin for Xamarin and Windows 3.0.1

查找文档 here

private static ISettings AppSettings =>
    CrossSettings.Current;

public static string AccessToken
{
  get => AppSettings.GetValueOrDefault(nameof(AccessToken), string.Empty); 
  set => AppSettings.AddOrUpdateValue(nameof(AccessToken), value); 
}

会话在服务器而非客户端进行管理。您将从服务器获得到期时间和刷新令牌 URL。您可以使令牌过期并在过期时间后将其删除。