Supabase backend palveluna · Oppitunti

Ensimmäisen funktion käyttöönotto

Kirjoita ja ota käyttöön yksinkertainen Edge Function mukautettujen API-päätepisteiden tai taustajärjestelmälogiikan käsittelyyn suoraan Supabase-projektistasi.

Oppitunti 2/411 vaihetta

Ensimmäisen funktion käyttöönotto on ilmainen Supabase backend palveluna-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Supabase backend palveluna-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Supabase backend palveluna-kurssilla on yhteensä 4 oppituntia.

Koodin julkaiseminen

Tervetuloa ottamaan ensimmäinen Supabase Edge Function -funktionne käyttöön! Tässä oppitunnissa opitte viemään funktion koodin käytettäväksi API-päätepisteen kautta.

Käyttöönotto tarkoittaa funktion julkaisemista niin, että sitä voidaan kutsua sovelluksesta, verkkoselaimesta tai muista palveluista. Näin taustajärjestelmän logiikka saadaan tuotantoon!

Supabase CLI

Edge Functions -toimintojen käyttöönottoon käytätte pääasiassa Supabase Command Line Interface (CLI) -työkalua. Sen avulla hallitsette Supabase-projektianne paikallisesti ja käsittelette etätaustajärjestelmäänne.

  • Varmistakaa, että CLI on asennettu ja määritetty projektianne varten.
  • Käytätte komentoja, kuten supabase functions new ja supabase functions deploy.

Uuden funktion luominen

Aloitetaan luomalla uusi Edge Function -funktio. Siirtykää terminaalissa projektinne juurihakemistoon ja käyttäkää komentoa supabase functions new:

Tämä komento luo funktiolle uuden kansion, joka sisältää index.ts-tiedoston. Siihen kirjoitetaan Deno-koodinne (TypeScript/JavaScript).

supabase functions new my-first-function

Funktion koodirakenne

Funktion luomisen jälkeen löydätte uuden hakemiston, esimerkiksi supabase/functions/my-first-function, joka sisältää index.ts-tiedoston. Tämä tiedosto on Edge Function -funktion aloituspiste.

Supabase Edge Functions perustuu Denoon, joka on suojattu JavaScript- ja TypeScript-ajonaikainen ympäristö. Ne vievät oletusfunktion, joka käsittelee saapuvat HTTP-pyynnöt.

Yksinkertaisen funktion kirjoittaminen

Kirjoitetaan nyt yksinkertainen Hello, World! -funktio. Avatkaa uuden funktion hakemistossa oleva index.ts-tiedosto ja korvatkaa sen sisältö seuraavalla koodilla:

Tämä funktio palauttaa yksinkertaisesti pelkkää tekstiä sisältävän vastauksen. Se on erinomainen lähtökohta!

import { serve } from 'https://deno.land/std@0.177.0/http/server.ts'

serve(async (req) => {
  return new Response("Hello from your first Edge Function!", {
    headers: { 'Content-Type': 'text/plain' },
  })
})

Funktion käyttöönotto

Kun koodi on valmis, on aika ottaa funktio käyttöön! Käyttäkää komentoa supabase functions deploy ja määrittäkää funktion nimi:

CLI kääntää funktion ja lataa sen Supabase-projektiinne. Käyttöönoton jälkeen siitä tulee toimiva API-päätepiste!

supabase functions deploy my-first-function

Kutsuminen cURLilla

Käyttöönoton jälkeen voitte testata funktiotanne. Helpoin tapa on käyttää terminaalissa cURL-työkalua. Tarvitsette Supabase-projektinne URL-osoitteen ja projektin Anon Key -avaimen, jotka löytyvät projektin asetuksista.

Korvatkaa paikkamerkit projektinne oikeilla tiedoilla:

curl -X POST 'https://your-project-ref.supabase.co/functions/v1/my-first-function' \
  -H 'Authorization: Bearer YOUR_ANON_KEY' \
  -H 'Content-Type: application/json' \
  -d '{}'

Kutsuminen verkosta (JS)

Voitte kutsua Edge Function -funktiota myös mistä tahansa verkkosovelluksesta tavallisen fetch-rajapinnan avulla. Näin voitte kutsua sitä asiakaspuolen JavaScript-koodista:

Muistakaa korvata paikkamerkkinä oleva URL-osoite ja avain projektinne oikeilla tiedoilla.

async function callMyFunction() {
  const SUPABASE_URL = "https://your-project-ref.supabase.co";
  const SUPABASE_ANON_KEY = "YOUR_ANON_KEY";

  try {
    const res = await fetch(
      `${SUPABASE_URL}/functions/v1/my-first-function`,
      {
        method: 'POST',
        headers: {
          'Authorization': `Bearer ${SUPABASE_ANON_KEY}`,
          'Content-Type': 'application/json',
        },
        body: JSON.stringify({})
      }
    )
    const data = await res.text() // Use .text() for plain text response
    console.log(data)
  } catch (error) {
    console.error("Error calling function:", error)
  }
}

callMyFunction()

Tietojen välittäminen ja uudelleenkäyttöönotto

Funktiot ovat hyödyllisempiä, kun ne voivat vastaanottaa syötteitä! Päivitetään funktiomme ottamaan pyynnön rungosta name-arvo ja vastaamaan henkilökohtaisella tervehdyksellä.

Kun olette muokanneet index.ts-tiedostoa, muutokset otetaan käyttöön suorittamalla uudelleen supabase functions deploy my-first-function.

import { serve } from 'https://deno.land/std@0.177.0/http/server.ts'

serve(async (req) => {
  const { name } = await req.json() // Expects { "name": "..." }
  const greeting = name ? `Hello, ${name}!` : "Hello there!"

  return new Response(
    JSON.stringify({ message: greeting }),
    { headers: { 'Content-Type': 'application/json' } },
  )
})

Pikatarkistus: käyttöönoton vaiheet

Mikä seuraavista on oikea vaiheiden järjestys Supabase Edge Function -funktion käyttöönottoon sen koodin kirjoittamisen jälkeen?

Kertaus: ensimmäinen käyttöönottonne!

Olette ottaneet ensimmäisen Supabase Edge Function -funktionne onnistuneesti käyttöön! Tässä käsitellyt asiat:

  • Käytitte Supabase CLI -työkalua funktioiden hallintaan.
  • Loitte uuden funktion komennolla supabase functions new.
  • Kirjoititte yksinkertaisen Deno-funktion index.ts-tiedostoon.
  • Otitte sen käyttöön komennolla supabase functions deploy.
  • Kutsuitte funktiota cURL-työkalulla ja asiakaspuolen JavaScriptillä.
  • Opitte välittämään funktioille tietoja ja ottamaan muutokset uudelleen käyttöön.

Nyt käytettävissänne on toimiva taustajärjestelmän päätepiste!

Aloita maksutta

Opi Supabase backend palveluna tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
11
Oppitunnit
40

Usein kysytyt kysymykset

Onko oppitunti ”Ensimmäisen funktion käyttöönotto” ilmainen?

Kyllä – oppitunnin ”Ensimmäisen funktion käyttöönotto” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Supabase backend palveluna-kurssin, päivitä CoddyKit PROhon. Supabase backend palveluna-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Ensimmäisen funktion käyttöönotto”?

Kirjoita ja ota käyttöön yksinkertainen Edge Function mukautettujen API-päätepisteiden tai taustajärjestelmälogiikan käsittelyyn suoraan Supabase-projektistasi. Harjoittelet Supabase backend palveluna-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Supabase backend palveluna-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Supabase backend palveluna-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Ensimmäisen funktion käyttöönotto”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Supabase backend palveluna-oppitunnilla?

Kyllä. Jokainen Supabase backend palveluna-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Johdatus Edge Functions -funktioihin
  2. Ensimmäisen funktion käyttöönotto
  3. Funktioiden integrointi sovellukseen
  4. Salaisuudet, ympäristömuuttujat ja ajastetut funktiot
← Takaisin: Supabase backend palveluna