Aurabase-logo
aurabasisdocumenten
documenten›Edge Functions›Your first function

Je eerste Edge-functie

U schrijft een functie, implementeert deze in uw project, roept deze aan vanuit Node.js en leest het resultaat ervan. Elke onderstaande opdracht is echt uitgevoerd.

10 min lezen·Niveau beginner·Herzien op 12 okt 2026
Deze Engelse tekst is automatisch gegenereerd op basis van het Franse origineel en is nog niet beoordeeld.
Deze pagina is automatisch vertaald. De Engelse versie is gezaghebbend.
#
Vereisten

Voordat je begint

Je hebt nodig:

  • Node.js 20 of hoger.
  • De aura CLI. Installeer het met npm install -g @aurabase/cli (zie de CLI-referentie voor andere platforms).
  • Een Aurabase-account.
De CLI spreekt vandaag Frans

De aura CLI drukt zijn berichten in het Frans af. De onderstaande uitvoer is gekopieerd van echte runs en niet vertaald.

#
Project

1. Creëer en koppel een project

Meld u aan, maak een project aan en koppel uw werkmap eraan. Vervang <org-slug> door de slak weergegeven door aura orgs list.

terminalbash
aura login --email you@example.com --password '<your-password>'
aura orgs list
aura projects create my-app --org <org-slug>

Met de laatste opdracht worden de project-URL en uw eerste API-sleutels afgedrukt. Kopieer ze nu: de initiële sleutels worden slechts één keer weergegeven. Als je ze mist, maak dan nieuwe aan in de Studio onder Instellingen, API-sleutels.

outputtext
  ✔ Projet créé : my-app (e99f2c4f-43e2-4d08-b023-b4f9e687d17c)
    import { createClient } from '@aurabase/aurabase-js'
    const client = createClient('http://my-app-ajap5iw2.localhost:8080', 'aura_anon_…')

Koppel de huidige map aan het project:

terminalbash
aura link --project-id e99f2c4f-43e2-4d08-b023-b4f9e687d17c
outputtext
  ✔ Projet e99f2c4f-… lié dans aurabase.toml.
  • URL du projet : http://my-app-ajap5iw2.localhost:8080

Vertel de CLI vervolgens waar het gegevensvlak zich bevindt en welke sleutel moet worden gebruikt. Voor implementatie is een sleutel service_role vereist, omdat het implementeren van code een administratieve actie is.

.envbash
AURA_PROJECT_URL=http://my-app-ajap5iw2.localhost:8080
AURA_API_KEY=<your service_role key>
Bewaar de service_role-sleutel op uw computer

Een service_role-sleutel omzeilt beveiliging op rijniveau en kan code implementeren. Plaats het nooit in een browserbundel en voer geen .env uit.

#
Codeer

2. Schrijf de functie

terminalbash
aura functions new hello
outputtext
  ✔ Nouvelle fonction créée dans aurabase/functions/hello (gabarit TypeScript Deno)

Open aurabase/functions/hello/index.ts en vervang de inhoud:

aurabase/functions/hello/index.tstypescript
Deno.serve(async (req: Request) => {
  const { name = 'world' } = await req.json().catch(() => ({}))

  return new Response(JSON.stringify({ greeting: `Hello, ${name}!` }), {
    headers: { 'content-type': 'application/json' },
  })
})

Een functie moet Deno.serve aanroepen. Een export default wordt nooit aangeroepen.

#
Implementeren

3. Implementeer het

terminalbash
aura functions deploy hello
outputtext
  ✔ Détection script TypeScript (runtime: deno)...
  • Envoi vers le service (runtime: deno)...
✔ Fonction 'hello' déployée avec succès !

Roep het één keer aan vanuit de CLI om te controleren of het antwoordt:

terminalbash
aura functions invoke hello --data '{"name":"Ada"}'
outputtext
  ✔ Réponse (200) :
{
  "data": {
    "body": { "greeting": "Hello, Ada!" },
    "duration_ms": 74,
    …
#
SDK

4. Roep het aan vanuit de SDK

terminalbash
mkdir hello-client && cd hello-client
npm init -y
npm install @aurabase/aurabase-js
hello.mjstypescript
import { createClient } from '@aurabase/aurabase-js'

const aura = createClient(process.env.AURA_PROJECT_URL, process.env.AURA_ANON_KEY)

const { data, error } = await aura.functions.invoke('hello', { body: { name: 'Ada' } })
if (error) throw error

console.log(data.greeting)
terminalbash
AURA_PROJECT_URL=http://my-app-ajap5iw2.localhost:8080 AURA_ANON_KEY=aura_anon_… node hello.mjs
outputtext
Hello, Ada!

U hebt een functie aangeroepen met de openbare sleutel anon. Dat is de enige oproep die een publieke sleutel kan doen: zie wie wat kan aanroepen.

Laatst bijgewerkt · 12 okt 2026