0Pricing
Supabase Backend as a Service · Урок

Секреты, переменные окружения и функции по расписанию

Безопасно управляйте ключами API в Edge Functions с помощью секретов, считывайте переменные окружения и запускайте функции по расписанию через cron.

«Секреты, переменные окружения и функции по расписанию» — бесплатный урок Supabase Backend as a Service на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Supabase Backend as a Service, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Supabase Backend as a Service содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why Functions Need Secrets

Edge Functions often call third-party APIs that require keys. Hardcoding keys is unsafe, so Supabase provides a secrets manager.

Setting a Secret

Use the CLI to store a secret. It becomes an environment variable inside your functions.

supabase secrets set STRIPE_KEY=sk_live_123

Reading Environment Variables

Inside the function (Deno runtime) read it from Deno.env.

const stripeKey = Deno.env.get('STRIPE_KEY');
if (!stripeKey) throw new Error('Missing STRIPE_KEY');

Built-In Variables

Supabase injects useful defaults like SUPABASE_URL and SUPABASE_SERVICE_ROLE_KEY so functions can talk to your own project securely.

Listing and Removing Secrets

Manage secrets over time with list and unset commands.

supabase secrets list
supabase secrets unset STRIPE_KEY

Validating Config at Startup

Fail fast if a required variable is missing, so misconfiguration is caught early.

function requireEnv(names, env) {
  const missing = names.filter(n => !env[n]);
  if (missing.length) throw new Error('Missing: ' + missing.join(', '));
  return true;
}
console.log(requireEnv(['A'], { A: '1' }));

Why Scheduled Functions?

Some work is recurring: nightly cleanups, sending digests, syncing data. Supabase can invoke an Edge Function on a schedule using cron.

Understanding Cron Syntax

A cron expression has five fields: minute, hour, day-of-month, month, day-of-week.

  • 0 3 * * * = daily at 03:00
  • */15 * * * * = every 15 minutes

Scheduling With pg_cron

Enable the pg_cron extension and schedule a call to your function's HTTP endpoint.

select cron.schedule(
  'nightly-cleanup',
  '0 3 * * *',
  $$ select net.http_post('https://proj.functions.supabase.co/cleanup') $$
);

Idempotent Scheduled Work

Schedulers can fire twice or overlap. Make scheduled functions idempotent so repeated runs do not corrupt data.

Putting It Together

Store keys as secrets, read them via env vars, validate at startup, and automate recurring tasks with cron-scheduled function calls.

Quick Check

Test your understanding of secrets and scheduling.

Recap

You learned to manage secrets, read environment variables with Deno.env, validate config at startup, and run scheduled functions with cron and pg_cron, keeping scheduled work idempotent.

Часто задаваемые вопросы

Урок «Секреты, переменные окружения и функции по расписанию» бесплатный?

Да — полный текст урока «Секреты, переменные окружения и функции по расписанию» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Supabase Backend as a Service, подпишись на CoddyKit PRO. Курс Supabase Backend as a Service содержит 4 уроков всего.

Чему я научусь в уроке «Секреты, переменные окружения и функции по расписанию»?

Безопасно управляйте ключами API в Edge Functions с помощью секретов, считывайте переменные окружения и запускайте функции по расписанию через cron. Ты практикуешь Supabase Backend as a Service с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Supabase Backend as a Service?

Предыдущий опыт не требуется. Supabase Backend as a Service на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Секреты, переменные окружения и функции по расписанию»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Supabase Backend as a Service?

Да. Каждый урок Supabase Backend as a Service включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Введение в пограничные функции
  2. Развёртывание первой функции
  3. Интеграция функций с приложением
  4. Секреты, переменные окружения и функции по расписанию
← Назад к Supabase Backend as a Service