配置教程
本应用是纯前端网盘,数据直连你自己的 Supabase 项目。按以下步骤 5 分钟搞定。
1 创建 Supabase 项目
- 打开 supabase.com 注册并登录。
- 点 New project,填项目名、数据库密码、选区域,等待初始化完成。
2 开启邮箱登录
- 左侧菜单 Authentication → Providers,确保 Email 已启用。
- 开发期可在 Authentication → Settings 关闭 Confirm email(否则注册后需邮件验证)。
- 在 Authentication → Users 点 Add user 手动添加账号(填邮箱+密码,勾选 Auto Confirm)。
也可以用本应用登录页的"注册"按钮自动注册(需关闭 Confirm email)。
3 创建 Storage 桶
- 左侧菜单 Storage → New bucket,名称填
files。 - 是否 Public 按需:私有桶只能登录后访问(下载走签名 URL);公开桶可拿永久外链。本应用两者都支持。
根目录固定为
files 桶,所有文件存在 {你的uid}/... 下。4 执行 SQL 策略(复制粘贴)
左侧 SQL Editor → New query,粘贴以下内容并点 Run:
-- 允许登录用户只能操作自己 uid 目录下的文件
alter table storage.objects enable row level security;
drop policy if exists "own_folder_all" on storage.objects;
create policy "own_folder_all" on storage.objects
for all to authenticated
using (
bucket_id = 'files'
and (storage.foldername(name))[1] = auth.uid()::text
)
with check (
bucket_id = 'files'
and (storage.foldername(name))[1] = auth.uid()::text
);
-- 允许读取 bucket 元信息(列表需要)
drop policy if exists "bucket_read" on storage.buckets;
create policy "bucket_read" on storage.buckets
for select to authenticated
using (id = 'files');
5 复制项目 URL 和 anon key
- 左侧 Project Settings → API。
- 复制 Project URL(形如
https://xxxx.supabase.co)。 - 复制 anon public key(一长串
eyJ...)。
只用 anon key。service_role key 绝不能填这里,它是最高权限密钥。
6 回到应用填表
打开 首页,把 URL 和 anon key 填进表单,登录即可。配置会保存在浏览器 localStorage,下次自动填充。
常见问题
- 登录提示 Invalid login credentials:账号不存在或密码错,去 Auth → Users 添加。
- 上传报 new row violates row-level security:SQL 策略没执行成功,重跑第 4 步。
- 列表 403:没执行 bucket_read 策略,或桶名不是
files。 - 中文文件名乱码:本应用已用 base64 编码文件名,放心传。
- 换项目:清空表单重新填即可,或点退出后重新配置。