esplora / auto-login
通过临时链接实现无缝自动登录功能,提供便捷且安全的应用访问。
1.0.0
2023-07-22 00:59 UTC
Requires
- laravel/framework: ^10.0
Requires (Dev)
- laravel/pint: ^1.2
- orchestra/testbench-core: ^8.0
- orchestra/testbench-dusk: ^8.0
- phpunit/phpunit: ^10.0
README
Laravel 的 AutoLogin 包通过临时链接实现无缝自动登录功能。通过安全地使用时间限制的临时自动登录链接,使用户能够方便地访问您的应用程序。
安装
您可以使用 Composer 包管理器在项目中安装 AutoLogin。
composer require esplora/auto-login
用法
要开始使用 AutoLogin 包,请按照以下步骤操作
- 在您的
routes/web.php文件中添加自动登录的路由
use Esplora\AutoLogin\AutoLogin; AutoLogin::routes();
这将注册自动登录功能的必要路由。
- 在您的控制器、电子邮件或其他相关位置使用以下方法创建临时自动登录链接
AutoLogin::to('/path'); // or use named routes AutoLogin::route('telescope', [ 'active' => '1' ]);
这些方法将生成自动登录用户的有效链接。默认情况下,将使用当前认证的用户。但是,如果在控制台或未认证的环境中执行代码,您需要将用户 ID 作为第二个参数传递
AutoLogin::to('/path', 123); // or use named routes AutoLogin::route('telescope', [ 'active' => '1' ], 123);
配置
AutoLogin 包提供了一些配置选项以满足您的需求。默认情况下,自动登录 URL 设置为 /autologin。但是,如果您已更改此路由的使用,您可以使用以下方法指定所需的 URL
use Esplora\AutoLogin\AutoLogin; AutoLogin::routes('/your/path/autologin');
此外,您还可以指定一个 Blade 模板来自定义自动登录视图。只需将所需的模板路径作为第二个参数传递
use Esplora\AutoLogin\AutoLogin; AutoLogin::routes('/your/path/autologin', 'path.for.your.blade.template');
在您的自定义模板中,您可以访问 link 变量,其中包含自动登录 URL,并根据需要使用它。
<!-- path.for.your.blade.template --> <!doctype html> <html> <head> <meta charset="UTF-8" /> <title>Redirecting...</title> <script type="text/javascript"> setTimeout(function () { window.location.href = "{{ $link }}"; }, 3000); </script> </head> <body> <h1>You are being redirected</h1> <p>You will be redirected to an external page in a few seconds.</p> <p> If you are not redirected automatically, please click <a href="{{ $link }}">here</a>. </p> </body> </html>
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅许可证文件。