Skip to content

Next.js 身份验证 — Better Auth

Better Auth 是 Next.js 生态的新兴鉴权库,替代 next-auth/Auth.js。

bash
npm install better-auth
ts
// lib/auth.ts
import { betterAuth } from 'better-auth'
import { prismaAdapter } from 'better-auth/adapters/prisma'

export const auth = betterAuth({
  database: prismaAdapter(prisma, { provider: 'mysql' }),
  emailAndPassword: { enabled: true },
  socialProviders: {
    github: { clientId: process.env.GITHUB_CLIENT_ID!, clientSecret: process.env.GITHUB_CLIENT_SECRET! },
  },
})
tsx
// 服务端获取当前用户
import { auth } from '@/lib/auth'
const session = await auth.api.getSession({ headers })

你项目里用 next-auth 5.0 beta,better-auth 是更新的替代方案。