signifly / laravel-janitor
轻松添加登录代理到您的Laravel API。
v1.3.3
2023-08-03 11:08 UTC
Requires
- php: ^7.2|^7.3|^7.4|^8.0
- guzzlehttp/guzzle: ^6.3|^7.0
- illuminate/auth: ~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
- illuminate/contracts: ~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
- illuminate/database: ~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
- illuminate/http: ~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
- illuminate/routing: ~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
- illuminate/support: ~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
Requires (Dev)
- laravel/passport: ^7.0|^8.0|^9.0|^10.0
- orchestra/testbench: ^4.0|^5.0|^6.0
- phpunit/phpunit: ^7.0|^8.0|^9.0
- tymon/jwt-auth: ^1.0
Suggests
- laravel/passport: Required when using the passport proxy
- tymon/jwt-auth: Required when using the jwt proxy
README
轻松添加登录代理到您的Laravel API
signifly/laravel-janitor
包允许您轻松将登录代理添加到您的Laravel API。
您可以找到两篇文章,引导您开始使用
文档
要开始,您必须安装 laravel/passport
或 tymon/jwt-auth
。请参阅它们的文档以了解如何配置这些包。
注意:目前支持的 tymon/jwt-auth
版本是 1.0.0-rc.*
。
安装
您可以通过 composer 安装此包
composer require signifly/laravel-janitor
包将自动注册自身。
您可以选择使用以下命令发布配置文件
php artisan vendor:publish --tag="janitor-config"
在引入包和(可选)发布配置后,将路由添加到您的 routes/api.php
文件中
Janitor::routes();
它将默认添加以下路由
- 通过用户名和密码登录 (/login)
- 刷新当前用户访问令牌 (/login/refresh)
- 用户登出 (/logout)
- 发送密码重置电子邮件 (/password/email)
- 重置密码 (/password/reset)
您也可以通过传递一个闭包来定义特定的路由集
Janitor::routes(function ($router) { // Login and logout routes $router->forAuthentication(); // Password reset routes $router->forPasswordReset(); });
最后,将 JANITOR_DRIVER=driver-name
添加到您的 .env 文件中。
支持的驱动程序有: passport
和 jwt
。
注意:它不支持默认驱动程序,如果省略则抛出 InvalidArgumentException
。
重置密码
为了在API中使用重置密码实现,您必须向用户模型添加一个自定义重置密码通知。
// App\User.php /** * Send the password reset notification. * * @param string $token * @return void */ public function sendPasswordResetNotification($token) { $this->notify(new ResetPasswordNotification($token)); }
通知应该格式化一个正确的链接到您的客户端应用程序的重置密码URL。
测试
composer test
安全
如果您发现任何安全问题,请通过电子邮件 dev@signifly.com 联系我们,而不是使用问题跟踪器。
致谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。