本页还没有译文
本页 23 段还没译成한국어,下面显示的是英文原文。Edge Functions
还没翻译译自英文(supabase.com)本页 23 段都还没译
Edge Functions are server-side TypeScript functions, distributed globally at the edge—close to your users. They can be used for listening to webhooks or integrating your Supabase project with third-parties like Stripe. Edge Functions are developed using Deno, which offers a few benefits to you as a developer:
- It is open source.
- It is portable. Supabase Edge Functions run locally, and on any other Deno-compatible platform (including self-hosted infrastructure).
- It is TypeScript first and supports WASM.
- Edge Functions are globally distributed for low-latency.
How it works
- Request enters an edge gateway (relay) — the gateway routes traffic, handles auth headers/JWT validation, and applies routing/traffic rules.
- Auth & policies are applied — the gateway (or your function) can validate Supabase JWTs, apply rate-limits, and centralize security checks before executing code.
- Edge runtime executes your function — the function runs on a regionally-distributed Edge Runtime node closest to the user for minimal latency.
- Integrations & data access — functions commonly call Supabase APIs (Auth, Postgres, Storage) or third-party APIs. For Postgres, prefer connection strategies suited for edge/serverless environments (see the
connect-to-postgresguide). - Observability and logs — invocations emit logs and metrics you can explore in the dashboard or downstream monitoring (Sentry, etc.).
- Response returns via the gateway — the gateway forwards the response back to the client and records request metadata.
Quick technical notes
- Runtime: Supabase Edge Runtime (Deno compatible runtime with TypeScript first). Functions are
.tsfiles that export a handler. - Local dev parity: Use Supabase CLI for a local runtime similar to production for faster iteration (
supabase functions servecommand). - Global deployment: Deploy your Edge Functions via Supabase Dashboard, CLI or MCP.
- Cold starts & concurrency: cold starts are possible — design for short-lived, idempotent operations. Heavy long-running jobs should be moved to background workers.
- Database connections: treat Postgres like a remote, pooled service — use connection pools or serverless-friendly drivers.
- Secrets: store credentials in Supabase project secrets and access them via environment variables.
When to use Edge Functions
- Authenticated or public HTTP endpoints that need low latency.
- Webhook receivers (Stripe, GitHub, etc.).
- On-demand image or Open Graph generation.
- Small AI inference tasks or orchestrating calls to external LLM APIs (like OpenAI)
- Sending transactional emails.
- Building messaging bots for Slack, Discord, etc.
Get started
- Edge Functions quickstart: Create, test, and deploy your first Edge Function with the Supabase CLI.
Examples
Check out Supabase Edge Function Examples in GitHub or try these examples:
Supabase integration
- Securing Edge Functions: Declare which credentials your Edge Function accepts.
- Connect to Postgres: Connect to Postgres from Edge Functions.
- Type-Safe SQL with Kysely: Combine Kysely with Deno Postgres for a convenient developer experience when interacting directly with your Postgres database.
- With CORS headers: Send CORS headers for invoking from the browser.
- Building a RESTful Service API: Learn how to use HTTP methods and paths to build a RESTful service for managing tasks.
- Oak Server Middleware: Route requests with Oak server middleware.
- Web Stream: Stream Server-Sent Events from Edge Functions.
- Get User Location: Get user location data from user's IP address.
- Working with Supabase Storage: Read a file from Supabase Storage.
- Upload File: Process multipart/form-data.
Webhooks & payments
- Stripe Webhooks: Handle signed Stripe webhooks with Edge Functions.
- React Native with Stripe: Use Supabase and Stripe in a React Native app with Expo.
- Flutter with Stripe: Use Supabase and Stripe in a Flutter app.
AI & media
- Hugging Face: Access 100,000+ Machine Learning models.
- OpenAI: Use OpenAI in Edge Functions.
- Amazon Bedrock: Generate images with Amazon Bedrock in Edge Functions.
- Open Graph Image Generation: Generate Open Graph images with Deno and Supabase Edge Functions.
- OG Image Generation & Storage CDN Caching: Cache generated images with Supabase Storage CDN.
- Puppeteer: Generate screenshots with Puppeteer.
Bots & email
- Send emails: Send emails in Edge Functions with Resend.
- Discord Bot: Build a slash command Discord bot with Edge Functions.
- Telegram Bot: Build a Telegram bot with Edge Functions.
- Slack Bot Mention Edge Function: Handle Slack mentions in a Slack bot Edge Function.
Operations & security
- Monitoring with Sentry: Monitor Edge Functions with the Sentry Deno SDK.
- GitHub Actions: Deploy Edge Functions with GitHub Actions.
- Upstash Redis: Build an Edge Functions Counter with Upstash Redis.
- Rate Limiting: Rate-limit Edge Functions with Upstash Redis.
- Cloudflare Turnstile: Protect forms with Cloudflare Turnstile.
AI 翻译查看英文原文