Nuxt Nation 大会即将到来。加入我们,时间为 11 月 12 日至 13 日。

nuxt-fortify
nuxt-fortify

在 Nuxt 中使用 Laravel Fortify 和 Sanctum

🎉 Nuxt Laravel Fortify 和 Sanctum 模块

npm versionnpm downloadsLicenseNuxt

此 Nuxt 模块以 SSR 友好的方式将 Nuxt 与 Laravel Fortify 和 Sanctum 无缝集成,提供丰富的身份验证功能。使用此模块,您可以利用 Laravel Fortify 的功能,并执行 API 令牌和基于 SPA Cookie 的身份验证。

🚀 功能

  • 注册 📋
  • 重置密码 🔄
  • 电子邮件验证 📧
  • 更新个人资料信息 ✏️
  • 更新密码 🔐
  • 双因素身份验证 🔒

🛠️ 安装和配置

💡注意:您需要在后端 Laravel 应用程序中安装并设置Laravel FortifyLaravel Sanctumfortify-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-cookiePOST
login/loginPOST
logout/logoutPOST
user/userPOST
tfa.enable/user/two-factor-authenticationPOST
tfa.disable/user/two-factor-authenticationDELETE
tfa.code/user/two-factor-qr-codeGET
tfa.confirm/user/confirmed-two-factor-authenticationPOST
tfa.recoveryCode/user/two-factor-recovery-codesGET
tfa.challenge/two-factor-challengePOST
register/registerPOST
resetPassword/forgot-passwordPOST
updatePassword/reset-passwordPOST
confirmPassword/user/confirm-passwordPOST
resendEmailVerificationLink/email/verification-notificationPOST

按照这些步骤和配置,您将拥有一个与 Laravel Fortify 和 Sanctum 完全集成的 Nuxt 应用程序,从而提供强大的身份验证解决方案。🚀

🤝 贡献

我们欢迎您为增强此模块做出贡献。以下是贡献的步骤

  1. Fork 存储库:在 GitHub 上创建此存储库的 Fork。
  2. 克隆您的 Fork:将您分叉的存储库克隆到您的本地机器。
    git clone https://github.com/dev-charles15531/nuxt-forify.git
    cd nuxt-fortify
    
  3. 创建分支:为您的功能或错误修复创建一个新分支。
    git checkout -b feature-or-bugfix-name
    
  4. 进行更改:实现您的功能或错误修复。确保您的代码遵循项目的编码标准并通过所有测试。
  5. 提交更改:使用清晰简洁的提交消息提交您的更改。
    git add .
    git commit -m "Description of the feature or fix"
    
  6. 推送到您的 Fork:将您的更改推送到您分叉的存储库。
    git push origin feature-or-bugfix-name
    
  7. 打开拉取请求:向主存储库打开拉取请求。提供您更改的清晰描述以及它们解决的问题或功能。

📝 指南

  • 遵循项目中使用的编码风格。
  • 编写清晰简洁的提交消息。
  • 确保您的代码通过所有测试并且不会引入新的问题。
  • 如果您的更改影响模块的使用或配置方式,请更新文档。

📧 联系方式

如果您有任何疑问或需要帮助,请随时打开问题或联系此存储库的维护者。

感谢您的贡献!您的努力深受赞赏。🙌