用途:为 Next.js 应用搭建完整的认证与授权体系,基于 NextAuth.js(Auth.js v5)。
主要能力:配置 OAuth 提供商(GitHub、Google)与凭据登录;通过 Prisma 适配器持久化用户;服务端、客户端、中间件与 Server Action 中读取会话;用 middleware.ts 做全局路由保护与基于角色的访问控制;提供登录、注册表单与 Server Action 示例;支持自定义 JWT 内容与类型扩展;实现权限守卫组件与退出登录。
必要用法:安装 npm install next-auth@beta;在 auth.ts 中导出 handlers、signIn、signOut、auth;在 app/api/auth/[...nextauth]/route.ts 中导出 export const { GET, POST } = handlers;配置 AUTH_SECRET、GITHUB_ID、GITHUB_SECRET、GOOGLE_ID、GOOGLE_SECRET 等环境变量;服务端用 const session = await auth(),客户端用 useSession() 并包裹 SessionProvider。
适用场景:需要登录、OAuth 接入、受保护路由、角色或权限控制、JWT 会话的 Next.js 项目。
限制:资料未提供具体版本兼容范围、性能数据、收费信息或部署平台要求;示例依赖 Prisma、bcryptjs、zod 等外部库,需自行准备数据库与密钥。