server

Supabase Edge Functions/API 的服务器端集成工具,自动处理认证和客户端创建。

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:server。
它的用途是:Supabase Edge Functions/API 的服务器端集成工具,自动处理认证和客户端创建。
完整的 Skill 内容见:https://321skill.com/skills/server/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

“帮我在 Supabase Edge Function 里写一个接口,让登录用户能获取他自己的待办事项列表。” AI 会利用 @supabase/server 的知识,生成使用 `withSupabase({ auth: 'user' }, ...)` 包裹的处理函数,并在其中通过 `ctx.supabase` 进行 RLS 策略下的安全查询,快速输出可运行的代码。

介绍

@supabase/server 是一个专为 Supabase Edge Functions 和 API 设计的服务器端集成工具,旨在简化开发流程。它核心解决的是在服务器端环境中,开发者需要手动处理用户认证、创建和管理 Supabase 客户端实例,以及配置 CORS 等繁琐且易错的问题。

使用方式极其简洁,开发者只需导入 withSupabase 高阶函数,并配置认证模式(如 auth: 'user' 表示需要用户登录),即可在请求处理函数中直接通过上下文(ctx)获取到已根据请求身份自动配置好的 Supabase 客户端(ctx.supabase)和管理员客户端(ctx.supabaseAdmin),以及用户身份信息。这确保了数据库查询自动遵循 Row Level Security (RLS) 策略,让开发者能专注于业务逻辑。

它非常适合使用 Supabase 作为后端、并基于 Edge Functions(如 Deno、Cloudflare Workers)或类似无服务器环境构建 API 的开发者。无论是构建需要用户认证的私有 API、面向公众的公开端点,还是使用发布密钥(Publishable Key)进行客户端验证的场景,它都能提供开箱即用的支持。

与直接使用 supabase-js SDK 相比,@supabase/server 的核心区别在于它深度封装了请求生命周期的认证逻辑和客户端管理,提供了“配置即用”的体验。它并非一个功能更全的 SDK,而是一个旨在提升特定场景(服务器端 API 开发)下开发效率和代码安全性的适配层。

核心特点

与直接使用 `supabase-js` SDK 相比,它的核心区别在于深度封装了请求生命周期的认证逻辑和客户端管理,通过一个高阶函数 (`withSupabase`) 自动完成认证校验、客户端创建(区分用户级和管理员级)和 CORS 处理,开发者无需编写任何样板代码即可获得符合 RLS 策略的安全数据库访问。

注意事项

该工具主要设计用于 Supabase Edge Functions 或类似的服务器端 API 环境,不适合在传统的 Node.js 服务器应用或客户端浏览器中直接使用。

常见问题

@supabase/server 和 supabase-js 是什么关系?

@supabase/server 是基于 supabase-js SDK 构建的封装工具,专注于在 Edge Functions 等服务器端 API 场景下,自动处理认证和客户端创建,简化开发。

它支持哪些认证模式?

支持三种主要模式:`'user'`(需要有效用户 JWT)、`'publishable'`(验证发布密钥,保持匿名访问)、`'none'`(无需认证)。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/server/raw/index.md 读取 server 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。