auth0-vue
作者: auth0
用于在Vue.js 3应用中添加身份验证(登录、登出、用户会话、受保护路由)——集成@auth0/auth0-vue SDK用于单页应用与Vite…
npx skills add https://github.com/auth0/agent-skills --skill auth0-vueAuth0 Vue.js Integration
Add authentication to Vue.js 3 single-page applications using @auth0/auth0-vue.
Prerequisites
- Vue 3+ application (Vite or Vue CLI)
- Auth0 account and application configured
- If you don't have Auth0 set up yet, use the
auth0-quickstartskill first
When NOT to Use
- Server-side rendered Vue apps - See Auth0 Nuxt.js guide for SSR patterns
- Vue 2 applications - This SDK requires Vue 3+, use legacy @auth0/auth0-spa-js wrapper
- Embedded login - This SDK uses Auth0 Universal Login (redirect-based)
- Backend API authentication - Use express-openid-connect or JWT validation instead
Quick Start Workflow
1. Install SDK
npm install @auth0/auth0-vue
2. Configure Environment
For automated setup with Auth0 CLI, see Setup Guide for complete scripts.
For manual setup:
Create .env file:
VITE_AUTH0_DOMAIN=your-tenant.auth0.com
VITE_AUTH0_CLIENT_ID=your-client-id
3. Configure Auth0 Plugin
Update src/main.ts:
import { createApp } from 'vue';
import { createAuth0 } from '@auth0/auth0-vue';
import App from './App.vue';
const app = createApp(App);
app.use(
createAuth0({
domain: import.meta.env.VITE_AUTH0_DOMAIN,
clientId: import.meta.env.VITE_AUTH0_CLIENT_ID,
authorizationParams: {
redirect_uri: window.location.origin
}
})
);
app.mount('#app');
4. Add Authentication UI
Create a login component:
<script setup lang="ts">
import { useAuth0 } from '@auth0/auth0-vue';
const { loginWithRedirect, logout, isAuthenticated, user, isLoading } = useAuth0();
</script>
<template>
<div>
<div v-if="isLoading">Loading...</div>
<div v-else-if="isAuthenticated">
<img :src="user?.picture" :alt="user?.name" />
<span>Welcome, {{ user?.name }}</span>
<button @click="logout({ logoutParams: { returnTo: window.location.origin }})">
Logout
</button>
</div>
<button v-else @click="loginWithRedirect()">
Login
</button>
</div>
</template>
5. Test Authentication
Start your dev server and test the login flow:
npm run dev
Detailed Documentation
- Setup Guide - Automated setup scripts (Bash/PowerShell), CLI commands, manual configuration
- Integration Guide - Protected routes, API calls, error handling, composables
- API Reference - Complete SDK API, configuration options, composables reference, testing strategies
Common Mistakes
| Mistake | Fix |
|---|---|
| Forgot to add redirect URI in Auth0 Dashboard | Add your application URL (e.g., http://localhost:3000, https://app.example.com) to Allowed Callback URLs in Auth0 Dashboard |
| Using wrong env var prefix | Vite requires VITE_ prefix, Vue CLI uses VUE_APP_ |
| Not handling loading state | Always check isLoading before rendering auth-dependent UI |
| Storing tokens in localStorage | Never manually store tokens - SDK handles secure storage automatically |
| Missing createAuth0 plugin registration | Must call app.use(createAuth0({...})) before mounting app |
| Accessing auth before plugin loads | Wrap auth-dependent code in v-if="!isLoading" |
Related Skills
auth0-quickstart- Basic Auth0 setupauth0-migration- Migrate from another auth providerauth0-mfa- Add Multi-Factor Authenticationauth0-cli- Manage Auth0 resources from the terminal
Quick Reference
Core Composables:
useAuth0()- Main authentication composableisAuthenticated- Reactive check if user is logged inuser- Reactive user profile informationloginWithRedirect()- Initiate loginlogout()- Log out usergetAccessTokenSilently()- Get access token for API calls
Common Use Cases:
- Login/Logout buttons → See Step 4 above
- Protected routes with navigation guards → Integration Guide
- API calls with tokens → Integration Guide
- Error handling → Integration Guide
References
来自 auth0 的更多技能
acul-screen-generator
auth0
使用React或Vanilla JS SDK生成完整的、品牌化的Auth0高级自定义通用登录(ACUL)屏幕实现。当开发者要求……时使用。
official
auth0-android
auth0
在Android应用(Kotlin/Java)中添加Web Auth、生物识别保护凭证和MFA认证时使用 - 集成…
official
auth0-angular
auth0
在Angular应用中添加身份验证时使用,支持路由守卫和HTTP拦截器——集成@auth0/auth0-angular SDK用于单页应用
official
auth0-aspnetcore-api
auth0
在保护ASP.NET Core Web API端点时使用,支持JWT Bearer令牌验证、作用域/权限检查或无状态认证——集成…
official
auth0-cli
auth0
Auth0 CLI 命令参考 — 应用、API、用户、角色、组织、操作、日志、自定义域名、通用登录、Terraform、原始 API 模式及 --json…
official
auth0-expo
auth0
用于为Expo(React Native)移动应用添加身份验证功能——包括登录、登出、用户会话、受保护路由、生物识别或令牌管理。集成…
official
auth0-express
auth0
用于在Express.js Web应用中添加身份验证(登录、登出、受保护路由)——集成express-openid-connect实现基于会话的身份验证。
official
auth0-fastapi-api
auth0
在需要为FastAPI API端点添加JWT Bearer令牌验证、作用域/权限检查或无状态认证时使用——集成auth0-fastapi-api用于REST…
official