Laravel认证教程 - 如何在Laravel Breeze中设置基本认证

1,006 阅读5分钟

如今,认证是网络应用的一个重要功能和基本要求。开发人员花了很多时间为他们创建的每个应用程序建立认证模块。

但这种手动的方法可能会让人感到疲惫,而且有点无功而返。这就是Laravel真正的优势所在.它和Laravel Breeze一起, 让你担心核心应用程序的功能,它为你解决了认证问题。

在我们开始之前, 我假设你知道一些基本的PHP,如果你正在阅读这篇文章。这很可能是你的第一篇Laravel文章, 但PHP的知识会非常有用.

什么是Laravel Breeze?

你可能会想 - 这是什么Laravel Breeze,它是做什么的?从文档中可以看出:

Laravel Breeze是一个最小的,简单的实现Laravel的所有认证功能,包括登录,注册,密码重置,电子邮件验证,以及密码确认。

Laravel Breeze会自动为你的应用程序提供路由, 控制器和视图, 你需要注册和认证你的应用程序的用户.

在Laravel的旧版本中, 也有其他方法可以轻松地生成认证支架.

  • 在Laravel 7中, 有一个 [laravel/ui](https://laravel.com/docs/7.x/authentication).与Laravel Breeze不同,它使用Bootstrap而不是Tailwind CSS。
  • 在早于6的版本中, 你可以使用php artisan make:auth 来生成脚手架.

所以Laravel Breeze基本上只是在以前的版本上的最新发展。

通过使用Laravel Breeze, 你可以节省大量的开发时间, 而且你的应用程序会变得不那么容易出错.这是因为Laravel Breeze生成的脚手架已经被Laravel的专业人士确认为是最好的。

在我们开始之前, 你应该安装好composer和Laravel才能继续。你可以在这里安装composer,在这里安装Laravel。让我们深入了解一下。

如何安装Laravel Breeze

composer require laravel/breeze --dev

安装完成后, 你应该运行breeze:install 命令来发布认证视图, 路由, 控制器, 和其他资源到你的应用程序.

Laravel Breeze让你完全控制你的功能和实现,通过发布其代码到你的应用程序。

php artisan breeze:install

运行这个命令后, 你应该看到你的文件有一些变化。下面是一些你应该注意的:

  • 它已经创建了认证控制器(相当多)来处理注册、登录(认证)和注销、密码确认、电子邮件验证以及密码重置和更新(它甚至发送电子邮件)。
  • 它还创建了视图,使用Tailwind CSS来匹配所有的控制器动作。
  • 有一个仪表板视图,用户在认证成功后会被重定向到那里。
  • 它已经修改了登陆页面,包括认证页面的链接。
  • 它也创建了CSS和JavaScript文件,这些文件需要稍后进行编译。
  • 现在有一些与认证有关的路由,存储在auth.php routes文件中。
  • 测试也被包含在tests 目录中。

如何编译静态资产

我们要将生成的CSS和JavaScript文件最小化,它们分别在资源文件夹中的cssjs 文件夹中。

这将给我们带来更快的加载时间,也将导致HTTP请求的数量减少(因为所有的JavaScript和CSS文件都被编译成了一个文件)。

另外, 因为Laravel让你可以自由地使用你自己的CSS预处理器, 你会想把你的代码编译成浏览器可以解释的内容.

现在, 我们需要编译我们的静态资产来完成安装.通过运行这些命令来完成:

npm install
npm run dev

请记住,这可能需要一些时间,取决于你的网速:

编译成功

请注意,在你的public 文件夹中,你现在有cssjs 目录,这些目录存放着你可以在代码中使用的编译文件。

如何配置数据库和迁移

作为最后一步,你需要配置你的数据库并运行迁移,因为你从用户那里得到的任何数据目前都不能被存储:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=breeze
DB_USERNAME=root
DB_PASSWORD=
php artisan migrate

现在你都准备好了,你可以运行你的应用程序了:

php artisan serve

请到http://localhost:8000,看看你的应用程序正在运行:

登陆页面

你可以看到所有不同的页面,如登录页面、忘记密码页面、注册页面和仪表板:

登录页面

忘记密码页面

注册页面

仪表板

这就是你的成果.你已经成功安装和设置了Laravel和Laravel Breeze.🎊

如何添加一个前端框架

Laravel Breeze的好处不仅限于刀片模板。Laravel允许你建立单页应用程序(SPA)也有这些好处。

Laravel Breeze让你使用inertia.js(由Vue或React驱动), 如果你想的话,你可以很容易地安装它来生成这些支架。

如果你已经安装了Laravel Breeze而没有安装前端框架, 之前生成的认证文件(主要是刀片文件)将需要由Laravel Breeze重新编写,以使用框架。

php artisan breeze:install vue

// Or
php artisan breeze:install react

不要忘记重新编译你的资产.

npm install && npm run dev

总结

Laravel帮助你节省时间,同时也帮助你保持良好的代码质量。它可以让你使用Laravel Breeze来搭建认证视图, 控制器和路由。

你可以在这里找到这篇文章的所有代码。

如果你有任何问题或相关建议,请与我联系,分享他们。

要阅读更多我的文章或关注我的工作,你可以在LinkedInTwitterGithub上与我联系。这很迅速,很容易,而且是免费的!