SDK
Nuxt SDK
@authon/nuxt — SSR 지원, 라우트 미들웨어, 서버 측 유틸리티를 갖춘 Nuxt 3 모듈.
설치
bash
npm install @authon/nuxt모듈 설정
nuxt.config.ts
export default defineNuxtConfig({
modules: ["@authon/nuxt"],
authon: {
publishableKey: process.env.AUTHON_PUBLISHABLE_KEY,
secretKey: process.env.AUTHON_SECRET_KEY,
// Redirect unauthenticated users to /sign-in
redirectTo: "/sign-in",
// Routes that don't require auth
publicRoutes: ["/", "/about", "/pricing"],
},
});환경 변수
.env
AUTHON_PUBLISHABLE_KEY=pk_live_your_key
AUTHON_SECRET_KEY=sk_live_your_key페이지에서 사용
pages/dashboard.vue
<template>
<div>
<AuthonSignedIn>
<h1>Welcome, {{ user?.displayName }}</h1>
<AuthonUserButton />
</AuthonSignedIn>
</div>
</template>
<script setup lang="ts">
definePageMeta({ middleware: "authon" });
const { user } = useAuthonUser();
</script>서버 측 인증
server/api/protected.get.ts
import { requireAuthon } from "@authon/nuxt/server";
export default defineEventHandler(async (event) => {
const user = await requireAuthon(event);
// Throws 401 if not authenticated
return {
message: `Hello, ${user.email}!`,
userId: user.id,
};
});