官方规则: Supabase 免费版通常在 1 周(7 天) 没有任何活动后会将项目设为“暂停(Paused)”。 Supabase 的保活机制监测的是 API 活跃度。只要你的脚本向数据库发送了请求,并且数据库返回了响应(即便只是返回一个空数组或一行数据),系统就会判定你的项目处于“活跃”状态。
1. Supabase URL (项目地址)
这是最基础的。API Key 是钥匙,URL 就是门牌号。
- 位置: 就在 API Key 页面上方,或者 Settings -> API -> Project URL。
- 样子:
https://xxxxxx.supabase.co
2. 对应的 SDK(“翻译官”)
你不能直接用嘴跟数据库说话,得用它的语言。Supabase 官方提供了非常好用的库:
- 如果你用 Python: 需要安装
supabase库。pip install supabase
- 如果你用 Node.js (Vercel/Armbian): 需要安装
@supabase/supabase-js。npm install @supabase/supabase-js
3. 表名和字段名 (Table & Columns)
你需要知道你要操作哪张表,以及表里有哪些“格子”(列)。
- 比如你的保活脚本操作的是
keep_alive表。 - 如果你要存用户,你得知道字段是叫
username还是user_name。
4. RLS 策略 (Row Level Security) —— 最容易踩坑的地方
这是 Supabase 的“保安”。即便你拿到了 anon 钥匙,如果没有配置 RLS,你的脚本依然读不到数据(返回空数组或报错)。
- 你需要决定:
- 关闭 RLS(不推荐): 任何人拿着钥匙都能随便改,适合测试。
- 开启并配置 Policy: 比如设置一个规则:“允许持有 anon key 的用户读取数据”。
- 操作位置: Database -> Policies。
5. 环境变量配置文件 (.env)
作为一名合格的开发者,千万不要把 API Key 直接写在代码里(Hardcode)。
- 你需要在项目根目录创建一个
.env文件:SUPABASE_URL=你的URL SUPABASE_KEY=你的KEY - 然后在脚本里通过
process.env(Node) 或os.environ(Python) 去读取它。
📦 总结清单
如果你现在要写个新脚本,你的“装备包”里应该有:
| 装备 | 作用 |
|---|---|
| Project URL | 告诉脚本往哪儿发请求 |
| API Key (anon) | 证明你有进入的权限 |
| Supabase SDK | 提供 supabase.from('table').select('*') 这种简单的语法 |
| RLS Policy | 在数据库端允许这把钥匙执行特定操作 |
| Table Schema | 明确你要操作的数据结构 |
💡 小贴士
既然你已经在用 Armbian 和 Python/Node.js 学习,我建议你下一步可以试着写一个**“天气记录脚本”**:
- 用 Python 抓取当地天气。
- 用
supabase库把温度存进数据库。 - 这样你就从“保活”进阶到真正的“数据应用”了。
你需要我给你写一个简单的 Python 或 Node.js 操作数据库的模版代码吗?
