オーラベースのロゴ
オーラベースドキュメント
ドキュメント›Edge Functions›Your first function

初めてのエッジ機能

関数を作成し、それをプロジェクトにデプロイし、Node.js から呼び出して、その結果を読み取ります。以下のすべてのコマンドは実際に実行されました。

10 分 読み取り·レベル 初心者·2026/10/12 に改訂
この英語のテキストはフランス語のオリジナルから自動的に生成されたもので、まだレビューされていません。
このページは自動翻訳されました。英語版が正式です。
#
要件

始める前に

必要なものは次のとおりです。

  • Node.js 20以降。
  • aura CLI。 npm install -g @aurabase/cli を使用してインストールします (他のプラットフォームについては、CLI リファレンス を参照してください)。
  • Aurabase アカウント。
CLI は現在フランス語を話します

aura CLI は、メッセージをフランス語で出力します。以下の出力は、実際の実行からコピーされたものであり、翻訳されたものではありません。

#
プロジェクト

1. プロジェクトを作成してリンクする

サインインしてプロジェクトを作成し、作業フォルダーをそれにリンクします。 <org-slug> を aura orgs listで示されるスラッグに置き換えます。

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

最後のコマンドは、プロジェクト URL と最初の API キーを出力します。 今すぐコピーしてください。最初のキーは 1 回だけ表示されます。 それらを見逃した場合は、Studio の [設定]、[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_…')

現在のフォルダーをプロジェクトにリンクします。

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

次に、データ プレーンの場所と使用するキーを CLI に指示します。コードのデプロイは管理アクションであるため、デプロイには service_role キーが必要です。

.envbash
AURA_PROJECT_URL=http://my-app-ajap5iw2.localhost:8080
AURA_API_KEY=<your service_role key>
service_role キーをマシン上に保持します

service_role キーは行レベルのセキュリティをバイパスし、コードをデプロイできます。ブラウザバンドルに入れたり、 .envをコミットしたりしないでください。

#
コード

2.関数を書く

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

aurabase/functions/hello/index.ts を開いて、その内容を置き換えます。

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

関数は Deno.serveを呼び出す必要があります。 export default は呼び出されません。

#
デプロイ

3. 導入する

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 !

CLI から 1 回呼び出して、応答することを確認します。

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

4. 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!

公開 anon キーを使用して関数を呼び出しました。これが公開キーが実行できる唯一の呼び出しです。 を参照してください。誰がを呼び出すことができるのかを参照してください。