/write,输入留言并提交 — 祝福会被保存到 Supabase,并显示在首页的祝福墙上。每条留言都会被随机分配一个强调色,让整面墙看起来生动多彩。
写一条祝福
在任意浏览器中打开/write。你会看到一个全屏表单,内含一个文本框和字数计数器。
1
输入你的祝福
最多可以写 500 个字符。文本框底部的计数器会随着输入实时更新。
2
提交
点击 送上祝福。应用会把你的祝福发送到
/api/messages。所有提交都是匿名的 — 不需要姓名或登录。3
确认
提交成功后,表单会被一个确认页面替代。三秒后会自动跳转回首页,让你在祝福墙上看到刚才的留言。
校验与错误提示
请求发送前会进行客户端校验,API 端也会再做一次服务器端校验。速率限制
API 对每个 IP 地址限制为 每 5 分钟 3 条祝福。IP 在存储前会通过 SHA-256 进行哈希处理,因此数据库中不会保存原始 IP 地址。留言颜色
每条提交的留言会被随机分配六种 Tailwind 颜色之一:rose、sky、amber、emerald、violet 或 pink。颜色保存在 color 字段中,首页据此为每张卡片配色。
API 参考
GET /api/messages
返回最多 100 条留言,按时间倒序排列(最新的在前)。 响应留言对象数组,按时间倒序排列。最多 100 项。
POST /api/messages
提交一条新祝福。 请求体生日祝福文本。去除首尾空白后必须在 1 到 500 个字符之间。
成功响应(201)
管理后台
一个由密码保护的管理后台可以查看和删除留言。登录后可以从导航栏进入。后台会显示所有留言的时间戳、颜色,并提供删除任意条目的入口。管理后台需要设置
ADMIN_PASSWORD 环境变量。详情见部署指南。