xamarin.forms - 在 xamarin.form 应用程序中存储 token 的位置

标签 xamarin.forms

我有下面的类将用于 xamarin.forms 移动应用程序
检索由 OAuth(webapi) 生成的 token 。一旦生成,我需要存储
在一个我可以再次访问它并且不会一直生成它的地方。
将它存储在 Pcl 中的最佳位置在哪里?我也希望能够删除一次
用户注销。

        class LoginService
        {
            public async Task Login(string username, string password)
            {
                HttpWebRequest request = new HttpWebRequest(new Uri(String.Format("{0}Token", Constants.BaseAddress)));
                request.Method = "POST";

                string postString = String.Format("username={0}&password={1}&grant_type=password", 
                HttpUtility.HtmlEncode(username), HttpUtility.HtmlEncode(password));
                byte[] bytes = Encoding.UTF8.GetBytes(postString);
                using (Stream requestStream = await request.GetRequestStreamAsync())
                {
                    requestStream.Write(bytes, 0, bytes.Length);
                }

                try
                {
                    HttpWebResponse httpResponse =  (HttpWebResponse)(await request.GetResponseAsync());
                    string json;
                    using (Stream responseStream = httpResponse.GetResponseStream())
                    {
                        json = new StreamReader(responseStream).ReadToEnd();
                    }
                    TokenResponseModel tokenResponse = JsonConvert.DeserializeObject(json);
                    return tokenResponse.AccessToken;
                }
                catch (Exception ex)
                {
                    throw new SecurityException("Bad credentials", ex);
                }
            }
        }

最佳答案

表单有一个内置的 Properties您可以在其中存储少量持久数据的字典。

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

关于xamarin.forms - 在 xamarin.form 应用程序中存储 token 的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46004200/

相关文章:

android - Facebook 登录权限对话框中未显示生日范围

xamarin.forms - NuGet 包版本冲突

android - 如何在 MasterDetailPage - Xamarin.Forms 中自定义箭头图标、页面图标和页面标题

xamarin - 如何支持 Xamarin 表单中的辅助功能字体大小?

linq - Xamarin Forms - 如何从 MergedDictionaries 中选择 C# 中的资源

c# - 使用 Xamarin.Forms 创建一个每个单元格都是方形的 3X2 网格

c# - X.F WP8.1 在模块 System.Windows.dll 中找不到类型 System.Windows.Controls.Control

c# - 如何在Xamarin Forms中查看 'customized'?

c# - Xamarin.Forms 更改应用程序图标

c# - 点击 ListView 项目上的手势