Logo Aurabase
aurabasedocuments
documents›Edge Functions›Your first function

Votre première fonction Edge

Vous allez écrire une fonction, la déployer sur votre projet, l'appeler depuis Node.js et lire son résultat. Chaque commande ci-dessous a été exécutée pour de vrai.

10 min de lecture·Niveau débutant·Révisé le 12 oct. 2026
Ce texte anglais a été généré automatiquement à partir de l’original français et n’a pas encore été relu.
Cette page a été traduite automatiquement. La version anglaise fait foi.
#
Exigences

Avant de commencer

Il vous faut :

  • Node.js 20 ou version ultérieure.
  • La CLI aura. Installez-le avec npm install -g @aurabase/cli (voir la référence CLI pour les autres plates-formes).
  • Un compte Aurabase.
La CLI parle français aujourd’hui

La CLI aura imprime ses messages en français. Les sorties ci-dessous sont copiées à partir d'exécutions réelles et non traduites.

#
Projet

1. Créer et lier un projet

Connectez-vous, créez un projet et associez-y votre dossier de travail. Remplacez <org-slug> par le slug indiqué par aura orgs list.

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

La dernière commande imprime l'URL du projet et vos premières clés API. Copiez-les maintenant : les clés initiales ne sont affichées qu'une seule fois. Si vous les manquez, créez-en de nouveaux dans le Studio sous Paramètres, Clés API.

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_…')

Liez le dossier actuel au projet :

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

Indiquez ensuite à la CLI où se trouve le plan de données et quelle clé utiliser. Une clé service_role est requise pour le déploiement, car le déploiement de code est une action administrative.

.envbash
AURA_PROJECT_URL=http://my-app-ajap5iw2.localhost:8080
AURA_API_KEY=<your service_role key>
Conservez la clé service_role sur votre machine

Une clé service_role contourne la sécurité au niveau des lignes et peut déployer du code. Ne le mettez jamais dans un bundle de navigateur et ne commettez jamais .env.

#
Coder

2. Écrivez la fonction

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

Ouvrez aurabase/functions/hello/index.ts et remplacez son contenu :

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' },
  })
})

Une fonction doit appeler Deno.serve. Un export default n'est jamais appelé.

#
Déployer

3. Déployez-le

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 !

Appelez-le une fois depuis la CLI pour vérifier qu'il répond :

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

4. Appelez-le depuis le 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!

Vous avez appelé une fonction avec la clé publique anon. C'est le seul appel qu'une clé publique peut effectuer : voir qui peut appeler quoi.

Dernière mise à jour · 12 oct. 2026