java - 登录和登录与改造
问题描述
我在我的计算机上创建了一个带有 JSON 数据库的简单 localhost API。我已经实现了主机可以创建新配置文件或登录现有配置文件的功能。
"hosts": [
{
"id": 1,
"login": "drey95music",
"password": "8526000Qq",
"email": "shtandrinity@gmail.com",
"eventName": "FDC Open Mic",
"latitude": 41.924676,
"longitude": -87.700266
}],
"artists": [
{
"id": 1,
"name": "MDQ",
"phone": 7738375513,
"isLocated": "true",
"userId": 1
}]
我的问题是存储/记住/检查用户是否已登录以便他/她拥有更多功能的最佳方式是什么?
谢谢你。
解决方案
实际上,您可以根据您拥有的用例以多种不同的方式进行实现。就个人而言,我觉得,如果用户信息非常小,或者您只需要存储一个令牌以便将其传递给后续的 API 请求,那么将该令牌存储在 中SharedPreferences
可能是一个好主意。这样就可以从应用程序中的任何地方访问它,并且这个存储是持久的 - 也就是说,即使您关闭应用程序并重新打开它,它也会在持久内存中显示。
话虽如此,如果您必须存储大量信息,我建议您将这些信息存储在SQLite
数据库中。SharedPreferences
不推荐用于存储大量数据。
我希望这会有所帮助!
推荐阅读
- r - 使用行中的常用选项集和顶部的问题构建交叉表
- javascript - 数组推送不起作用
- sql - 按另一列排序一列的有效方法
- entity-framework - .NET CORE 3.1 - 实体框架 - 无法映射 IndexOf
- node.js - 如何通过 cli 将文件路径传递给 npm packge
- docker - 需要的建议:在同一主机上的多个 Web 服务之间共享 LE 通配符证书时的最佳实践
- android - 贴纸位置在图像上拖动贴纸的问题
- javascript - 无法使用 React.js 让普通的 Three.js React 组件跨越 CSS Grid 的宽度
- c# - 我可以按元素属性将列表拆分为更小的列表吗
- php - Laravel 在变换方法中继续循环