php - 长期存储变量
问题描述
自从我来到这里已经很长时间了,所以我希望我做得很好。
我正在开发一个基本上是 twitch streamer 的个人资料类型网站的 web 项目。它被设计为仅显示有关其流的流媒体信息。因此,其他用户不应通过 twitch 或其他方式登录。
我遇到的问题是最近对 twitch API 的更改需要使用 OAuth,并且令牌会在一段时间后重置。
问题真的是这个。。
我将如何在网站上私下存储变量?这个变量需要持续大约 30 - 60 天,不能存储在服务器以外的任何地方,任何人都无法访问,并且可以在时间段结束后轻松更改。
我正在查看 APC 并意识到,因为我使用的是 php 7.2,它已被 APCU 取代。查看有关 APCU 的详细信息会出现问题,因为该信息没有在我需要的时间范围内存储,并且可能刚刚启动并被清除。所以这标志着这一点。
我考虑过本地文件存储,但我需要对我收集的信息保密,所以本地文件是不行的。
我打算在项目完成后发布源代码,所以我不想使用数据库,因为它只会让简单的用户变得更加复杂。
会话存储为 cookie,这会将字符串交到任何想要恶意的人手中,这样就不会了。
长话短说,我试图避免以下情况。
local file storage
databases
sessions
any kind of caching that would be unreliable
我只需要朝着正确的方向迈出一步。
很抱歉这篇冗长的帖子。
解决方案
如果您想要最少的设置和基础设施,sqlite可能是一个不错的选择。它仍然是一个数据库,但它直接在 PHP 中工作,只需要一个文件来存储数据。这种解决方案也经常用于移动应用程序,因此开发人员可以从 SQL 的强大功能中受益,同时保持对用户的简单性。
sqlitetutorial.net有很好的教程来帮助你入门。
推荐阅读
- javascript - 在 Next.js 中获取非 API 数据的最佳实践是什么(通过 Vercel 部署)
- google-sheets - 谷歌表格。是否可以给一个词一个值?
- python-3.x - 如何在django中指定http请求的类型
- css - 将 css 线性渐变转换为 react-native-linear-gradient
- node.js - Aws ecs 任务 IP 地址在 nodejs 一段时间后停止工作
- javascript - Storybook 在preview-head.html 中的所有链接和脚本的http: 之后添加一个句点,如何删除它
- python - 如何在虚拟环境中调用python函数?
- swiftui - 如何从分页的 ScrollView (TabView) 添加/删除视图
- javascript - TypeScript 中的 ParallelJs,其中输入和输出数据属于不同类型
- perl - 无论如何要判断 perl 脚本是否通过 do 运行?