Nuxflare Auth 是一个现代、轻量级、自托管的身份验证服务器,旨在使向您的应用程序添加身份验证变得轻而易举。使用 Nuxt 3、Cloudflare Workers 和 OpenAuth.js 构建,它将您需要的所有内容捆绑在一处。
使用 Cloudflare、Nuxt 和 OpenAuth.js 构建的现代、轻量级、自托管身份验证服务器。
Nuxflare Auth 让您可以轻松地向应用程序添加身份验证。这是一个捆绑了您需要的一切的单一存储库:
packages/ ├── auth-frontend/ # auth UI components ├── emails/ # react email templates ├── example-client/ # example nuxt client └── functions/ # cloudflare workers
开始之前,您需要:
使用 Nuxt,已经有了很好的身份验证模块,例如 nuxt-auth-utils 和 sidebase-auth。
那么,Nuxflare Auth 有何不同?
packages/ ├── auth-frontend/ # auth UI components ├── emails/ # react email templates ├── example-client/ # example nuxt client └── functions/ # cloudflare workers
packages/ ├── auth-frontend/ # auth UI components ├── emails/ # react email templates ├── example-client/ # example nuxt client └── functions/ # cloudflare workers
a.使用此链接创建具有所需权限的 Cloudflare API 令牌。
b.设置 CLOUDFLARE_API_TOKEN 环境变量:
git clone https://github.com/nuxflare/auth nuxflare-auth cd nuxflare-auth pnpm install
export CLOUDFLARE_API_TOKEN=GahXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
# OAuth stuff pnpm sst secret set GoogleClientID your_client_id pnpm sst secret set GoogleClientSecret your_client_secret pnpm sst secret set GithubClientID your_client_id pnpm sst secret set GithubClientSecret your_client_secret # For emails pnpm sst secret set ResendApiKey your_resend_api_key
async run() { const fromEmail = "hi@nuxflare.com"; // ... }
pnpm dev
存储库包含一个简单的示例客户端应用程序,位于packages/example-client。
可组合项的 API 与 nuxt-auth-utils 非常相似:
pnpm sst deploy --stage production
您应该将客户端指向已部署的身份验证实例的端点:
```打字稿 [packages/example-client/app/utils/auth.ts]
const client = createClient({
clientID: "nuxt",
发行者:“https://authdemo.nuxflare.com”,//
});
export const useSession = () => { const sessionState = useSessionState(); const accessToken = useAccessTokenCookie(); const refreshToken = useRefreshTokenCookie(); const clear = () => { sessionState.value = {}; accessToken.value = null; refreshToken.value = null; }; return { loggedIn: computed(() => !!sessionState.value.user), user: computed(() => sessionState.value.user || null), session: sessionState, clear, }; };
以上是Nuxflare Auth:使用 Nuxt、Cloudflare 和 OpenAuth.js 构建的轻量级自托管身份验证服务器的详细内容。更多信息请关注PHP中文网其他相关文章!