backend-dev-guidelines
使用 Edge Functions 建立 Supabase 後端
متاح أيضًا من: diet103,Dimon94,BrianDai22,sickn33
為 Supabase 編寫後端代碼可能很複雜,涉及許多環節。此技能提供了 Edge Functions、資料庫設計、行級安全性和整合的現成模式,讓您能更快交付並減少錯誤。
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "backend-dev-guidelines". 建立用於建立部落格文章的 Edge Function
النتيجة المتوقعة:
- 帶有 CORS 預檢處理的 Deno.serve 處理器
- 用於標題、內容和可選標籤的 Zod 架構
- 透過 supabase.auth.getUser() 進行 JWT 驗證
- 使用經過身份驗證的使用者的 user_id 進行資料庫插入
- RLS 政策確保使用者只能插入自己的文章
- 具有狀態碼(400、401、500)的適當錯誤處理
- 帶有 201 狀態和已建立文章資料的成功回應
استخدام "backend-dev-guidelines". 為表設定行級安全性
النتيجة المتوقعة:
- ALTER TABLE table ENABLE ROW LEVEL SECURITY
- 使用 auth.uid() = user_id 建立 SELECT 的 CREATE POLICY
- 帶有 CHECK auth.uid() = user_id 的 INSERT 的 CREATE POLICY
- 在 RLS 政策中使用的欄位上建立 CREATE INDEX
- 使用不同的使用者角色測試政策
استخدام "backend-dev-guidelines". 驗證使用者註冊輸入
النتيجة المتوقعة:
- 具有電子郵件、密碼、使用者名稱欄位的 Zod 架構
- 使用正規表示式進行電子郵件格式驗證
- 密碼最小長度和複雜度檢查
- 針對資料庫檢查使用者名稱唯一性
- 為每個驗證失敗返回清晰的錯誤訊息
التدقيق الأمني
آمنPure documentation skill containing only markdown guidance files. Static scanner flagged 755 issues but all are false positives caused by pattern-matching on code examples within documentation. Previous Claude audit confirmed no security concerns. All code examples demonstrate legitimate security best practices for Supabase backends.
عوامل الخطر
⚙️ الأوامر الخارجية (2)
📁 الوصول إلى نظام الملفات (2)
🌐 الوصول إلى الشبكة (2)
درجة الجودة
ماذا يمكنك بناءه
建立無伺服器 API
為您的網頁或行動應用程式建立具有適當身份驗證和驗證的 Supabase Edge Functions。
設計安全的資料庫
設計具有行級安全性的 PostgreSQL 架構,在資料庫層級強制執行資料存取政策。
整合支付和電子郵件
為您的應用程式添加 Stripe 訂閱處理和 Resend 交易電子郵件。
جرّب هذه الموجهات
建立一個名為 create-user 的新 Supabase Edge Function,使用 Zod 驗證輸入,驗證 JWT 令牌,並使用 RLS 政策將記錄插入 users 表。
為 posts 表設計 PostgreSQL 架構,包含使用者所有權、發布狀態和適當的索引。包含讀寫存取的 RLS 政策。
向現有的 Edge Function 添加 JWT 驗證,並使用使用者中繼資料中的自訂聲明實作基於角色的存取控制。
建立一個 Stripe webhook 處理器 Edge Function,驗證簽章,處理 checkout.session.completed 事件,並更新資料庫中的使用者訂閱狀態。
أفضل الممارسات
- 始終在每個 Edge Function 開始時驗證 JWT 令牌,以防止未經授權的存取
- 在所有包含使用者資料的表上啟用行級安全性,以獲得資料庫層級的保護
- 在任何資料庫操作或業務邏輯之前,使用 Zod 架構驗證所有輸入
- 對所有機密和 API 金鑰使用環境變數 - 永遠不要在代碼中硬編碼憑證
تجنب
- 在生產環境的 Edge Functions 中跳過 JWT 驗證會使您的 API 暴露於未經授權的存取
- 為簡化開發而停用 RLS 違背了 Supabase 安全功能的目的
- 使用 console.error 進行錯誤處理而非適當的 HTTP 回應會破壞客戶端整合
- 繞過 Supabase 客戶端直接查詢資料庫會規避 RLS 保護
الأسئلة المتكررة
此技能涵蓋哪些 Supabase 功能?
我可以在常規 Express 伺服器中使用這些模式嗎?
此技能需要 Supabase CLI 嗎?
所示範例的資料安全嗎?
為什麼使用 Edge Functions 而不是傳統伺服器?
這與使用 Supabase JavaScript 客戶端相比如何?
تفاصيل المطور
بنية الملفات