🎉 Nuxt Laravel Fortify 和 Sanctum 模块
此 Nuxt 模块以 SSR 友好的方式将 Nuxt 与 Laravel Fortify 和 Sanctum 无缝集成,提供丰富的身份验证功能。使用此模块,您可以利用 Laravel Fortify 的功能,并执行 API 令牌和基于 SPA Cookie 的身份验证。
🚀 功能
- 注册 📋
- 重置密码 🔄
- 电子邮件验证 📧
- 更新个人资料信息 ✏️
- 更新密码 🔐
- 双因素身份验证 🔒
🛠️ 安装和配置
💡注意:您需要在后端 Laravel 应用程序中安装并设置Laravel Fortify、Laravel Sanctum 和 fortify-sanctum 包。 fortify-sanctum 包可轻松将 Laravel Fortify 的身份验证功能与 Laravel Sanctum 集成。
将 nuxt-fortify
模块添加到您的 Nuxt 项目中
npx nuxi@latest module add nuxt-fortify
💻 Nuxt 配置
通过安装模块并在 nuxt.config.js
中配置它,将其添加到您的 Nuxt 项目中。
// nuxt.config.js
export default {
modules: [
'nuxt-fortify',
],
nuxtFortify: {
baseUrl: 'https://127.0.0.1:3000/api',
origin: 'https://127.0.0.1:3000',
authMode: 'cookie',
authHome: '/dashboard',
endpoints: {
csrf: '/sanctum/csrf-cookie',
user: '/user',
// other endpoints...
},
features: {
registration: true,
resetPasswords: true,
twoFactorAuthentication: true,
// other features...
}
// other configurations...
}
}
📜 配置
键 | 数据类型 | 默认值 | 是否必填 |
---|---|---|---|
baseUrl | 字符串 | https://127.0.0.1:3000/api | 是 |
authMode | 字符串 | cookie | 是 |
loginRoute | 端点 | /login | 否 |
authHome | 端点 | /home | 否 |
cookieKey | 字符串 | XSRF-TOKEN | 否 |
cookieHeader | 字符串 | X-XSRF-TOKEN | 否 |
tokenStorageKey | 字符串 | API-TOKEN | 否 |
endpoints.csrf | 端点 | /sanctum/csrf-cookie | 否 |
endpoints.login | 端点 | /login | 否 |
endpoints.logout | 端点 | /logout | 否 |
endpoints.user | 端点 | /user | 否 |
endpoints.tfa.enable | 端点 | /user/two-factor-authentication | 否 |
endpoints.tfa.disable | 端点 | /user/two-factor-authentication | 否 |
endpoints.tfa.code | 端点 | /user/two-factor-qr-code | 否 |
endpoints.tfa.confirm | 端点 | /user/confirmed-two-factor-authentication | 否 |
endpoints.tfa.recoveryCode | 端点 | /user/two-factor-recovery-codes | 否 |
endpoints.tfa.challenge | 端点 | /two-factor-challenge | 否 |
endpoints.register | 端点 | /register | 否 |
endpoints.resetPassword | 端点 | /forgot-password | 否 |
endpoints.updatePassword | 端点 | /reset-password | 否 |
endpoints.confirmPassword | 端点 | /user/confirm-password | 否 |
endpoints.resendEmailVerificationLink | 端点 | /email/verification-notification | 否 |
intendedRedirect | 布尔值 | true | 否 |
features.registration | 布尔值 | true | 否 |
features.resetPasswords | 布尔值 | true | 否 |
features.emailVerification | 布尔值 | true | 否 |
features.updateProfileInformation | 布尔值 | true | 否 |
features.updatePasswords | 布尔值 | true | 否 |
features.twoFactorAuthentication | 布尔值 | true | 否 |
tfaRoute | 端点 | /two-factor-authentication | 否 |
logLevel | 数字 | 1 | 否 |
origin | 字符串 | https://127.0.0.1:3000 | 是 |
🌐 端点配置
端点键 | 路径 | 请求方法 |
---|---|---|
csrf | /sanctum/csrf-cookie | POST |
login | /login | POST |
logout | /logout | POST |
user | /user | POST |
tfa.enable | /user/two-factor-authentication | POST |
tfa.disable | /user/two-factor-authentication | DELETE |
tfa.code | /user/two-factor-qr-code | GET |
tfa.confirm | /user/confirmed-two-factor-authentication | POST |
tfa.recoveryCode | /user/two-factor-recovery-codes | GET |
tfa.challenge | /two-factor-challenge | POST |
register | /register | POST |
resetPassword | /forgot-password | POST |
updatePassword | /reset-password | POST |
confirmPassword | /user/confirm-password | POST |
resendEmailVerificationLink | /email/verification-notification | POST |
按照这些步骤和配置,您将拥有一个与 Laravel Fortify 和 Sanctum 完全集成的 Nuxt 应用程序,从而提供强大的身份验证解决方案。🚀
🤝 贡献
我们欢迎您为增强此模块做出贡献。以下是贡献的步骤
- Fork 存储库:在 GitHub 上创建此存储库的 Fork。
- 克隆您的 Fork:将您分叉的存储库克隆到您的本地机器。
git clone https://github.com/dev-charles15531/nuxt-forify.git cd nuxt-fortify
- 创建分支:为您的功能或错误修复创建一个新分支。
git checkout -b feature-or-bugfix-name
- 进行更改:实现您的功能或错误修复。确保您的代码遵循项目的编码标准并通过所有测试。
- 提交更改:使用清晰简洁的提交消息提交您的更改。
git add . git commit -m "Description of the feature or fix"
- 推送到您的 Fork:将您的更改推送到您分叉的存储库。
git push origin feature-or-bugfix-name
- 打开拉取请求:向主存储库打开拉取请求。提供您更改的清晰描述以及它们解决的问题或功能。
📝 指南
- 遵循项目中使用的编码风格。
- 编写清晰简洁的提交消息。
- 确保您的代码通过所有测试并且不会引入新的问题。
- 如果您的更改影响模块的使用或配置方式,请更新文档。
📧 联系方式
如果您有任何疑问或需要帮助,请随时打开问题或联系此存储库的维护者。
感谢您的贡献!您的努力深受赞赏。🙌